python報(bào)錯(cuò)TypeError: ‘NoneType‘ object is not subscriptable的解決方法
發(fā)現(xiàn)問題
寫python的時(shí)候出現(xiàn)了這個(gè)錯(cuò),然后網(wǎng)上的教程的解決方案幾乎都是——“重新定義下這個(gè)變量”,看的我一臉懵逼
后來發(fā)現(xiàn)原來是我把return None的方法賦給了變量,之后操作變量導(dǎo)致的,直接上代碼
for i in range(2000): read_lines = random.shuffle(read_lines) # 問題出在這里了 print(read_lines)
咋一看是沒啥問題,但是一運(yùn)行就報(bào)錯(cuò)
>>TypeError: 'NoneType' object is not subscriptable
后來發(fā)現(xiàn)原來 random.shuffle這個(gè)函數(shù)他是return None的,但是我把他賦值給了read_lines,導(dǎo)致后續(xù)在操作read_lines的時(shí)候一直都是這個(gè)報(bào)錯(cuò),包括打印read_lines也報(bào)錯(cuò)
這個(gè)是random庫(kù)里面的代碼(看他的注釋里面說的是return None)
def shuffle(self, x, random=None): """ Shuffle list x in place, and return None. Optional argument random is a 0-argument function returning a random float in [0.0, 1.0); if it is the default None, the standard random.random will be used. """ if random is None: randbelow = self._randbelow for i in reversed(range(1, len(x))): # pick an element in x[:i+1] with which to exchange x[i] j = randbelow(i+1) x[i], x[j] = x[j], x[i] else: _int = int for i in reversed(range(1, len(x))): # pick an element in x[:i+1] with which to exchange x[i] j = _int(random() * (i+1)) x[i], x[j] = x[j], x[i]
解決方案
把上面一行賦值語句改掉就好了
for i in range(2000): random.shuffle(read_lines) print(read_lines) content_list = []
總結(jié)
到此這篇關(guān)于python報(bào)錯(cuò)TypeError: ‘NoneType‘ object is not subscriptable解決方法的文章就介紹到這了,更多相關(guān)python報(bào)錯(cuò)TypeError解決內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python中報(bào)錯(cuò)"json.decoder.JSONDecodeError: Expecting value:"的解決
- Python報(bào)錯(cuò):PermissionError:?[Errno?13]?Permission?denied的解決辦法
- Python使用pip安裝報(bào)錯(cuò):is not a supported wheel on this platform的解決方法
- 解決安裝python3.7.4報(bào)錯(cuò)Can''''t connect to HTTPS URL because the SSL module is not available
- python報(bào)錯(cuò): ''list'' object has no attribute ''shape''的解決
- 解決python報(bào)錯(cuò)MemoryError的問題
- 解決Python中報(bào)錯(cuò)TypeError: must be str, not bytes問題
- Python運(yùn)行報(bào)錯(cuò)UnicodeDecodeError的解決方法
- python 3.74 運(yùn)行import numpy as np 報(bào)錯(cuò)lib\site-packages\numpy\__init__.py
- 一文帶你解決Python中的所有報(bào)錯(cuò)
相關(guān)文章
python plt可視化——打印特殊符號(hào)和制作圖例代碼
這篇文章主要介紹了python plt可視化——打印特殊符號(hào)和制作圖例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-04-04pandas DataFrame 交集并集補(bǔ)集的實(shí)現(xiàn)
這篇文章主要介紹了pandas DataFrame 交集并集補(bǔ)集的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06Python中json.dumps()函數(shù)使用和示例
這篇文章主要介紹了Python中json.dumps()函數(shù)使用和示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03tensorflow實(shí)現(xiàn)訓(xùn)練變量checkpoint的保存與讀取
今天小編就為大家分享一篇tensorflow實(shí)現(xiàn)訓(xùn)練變量checkpoint的保存與讀取,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-02-02python 微信好友特征數(shù)據(jù)分析及可視化
這篇文章主要介紹了python 微信好友特征數(shù)據(jù)分析及可視化,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01Python將多個(gè)excel表格合并為一個(gè)表格
這篇文章主要為大家詳細(xì)介紹了Python將多個(gè)excel表格合并為一個(gè)表格的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01python爬蟲之利用selenium+opencv識(shí)別滑動(dòng)驗(yàn)證并模擬登陸知乎功能
本文給大家介紹python爬蟲之利用selenium+opencv識(shí)別滑動(dòng)驗(yàn)證并模擬登陸知乎功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-09-09基于OpenCV實(shí)現(xiàn)視頻循環(huán)播放
這篇文章主要為大家介紹了如何利用OpenCV實(shí)現(xiàn)視頻的循環(huán)播放,本文為大家提供了兩種方式,一個(gè)是利用Python語言實(shí)現(xiàn),一個(gè)是利用C++語言實(shí)現(xiàn),需要的可以參考一下2022-02-02