python报错TypeError: ‘NoneType‘ object is not subscriptable的解决方法


Posted in Python onNovember 05, 2020

发现问题

写python的时候出现了这个错,然后网上的教程的解决方案几乎都是——“重新定义下这个变量”,看的我一脸懵逼

后来发现原来是我把return None的方法赋给了变量,之后操作变量导致的,直接上代码

for i in range(2000):
    read_lines = random.shuffle(read_lines) # 问题出在这里了
    print(read_lines)

咋一看是没啥问题,但是一运行就报错

>>TypeError: 'NoneType' object is not subscriptable

后来发现原来 random.shuffle这个函数他是return None的,但是我把他赋值给了read_lines,导致后续在操作read_lines的时候一直都是这个报错,包括打印read_lines也报错

这个是random库里面的代码(看他的注释里面说的是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 = []

总结

到此这篇关于python报错TypeError: ‘NoneType‘ object is not subscriptable解决方法的文章就介绍到这了,更多相关python报错TypeError解决内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中的is和id用法分析
Jan 26 Python
json跨域调用python的方法详解
Jan 11 Python
基于python list对象中嵌套元组使用sort时的排序方法
Apr 18 Python
python实现转圈打印矩阵
Mar 02 Python
Django高级编程之自定义Field实现多语言
Jul 02 Python
Apache部署Django项目图文详解
Jul 30 Python
Python实现字符串中某个字母的替代功能
Oct 21 Python
python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解
Feb 11 Python
python输出pdf文档的实例
Feb 13 Python
Python使用struct处理二进制(pack和unpack用法)
Nov 12 Python
Pytorch中Softmax和LogSoftmax的使用详解
Jun 05 Python
Python3中PyQt5简单实现文件打开及保存
Jun 10 Python
Python利用matplotlib绘制折线图的新手教程
Nov 05 #Python
详解Django中异步任务之django-celery
Nov 05 #Python
Python Django路径配置实现过程解析
Nov 05 #Python
Python基于tkinter canvas实现图片裁剪功能
Nov 05 #Python
Python利用matplotlib绘制散点图的新手教程
Nov 05 #Python
Python如何利用Har文件进行遍历指定字典替换提交的数据详解
Nov 05 #Python
Python word文本自动化操作实现方法解析
Nov 05 #Python
You might like
php做下载文件的实现代码及文件名中乱码解决方法
2011/02/03 PHP
PHP中array_map与array_column之间的关系分析
2014/08/19 PHP
Symfony页面的基本创建实例详解
2015/01/26 PHP
Discuz论坛密码与密保加密规则
2016/12/19 PHP
PHP convert_uudecode()函数讲解
2019/02/14 PHP
PHP超低内存遍历目录文件和读取超大文件的方法
2019/05/01 PHP
php文件包含的几种方式总结
2019/09/19 PHP
php和nginx交互实例讲解
2019/09/24 PHP
学习ExtJS border布局
2009/10/08 Javascript
基于jQuery的合并表格中相同文本的相邻单元格的代码
2011/04/06 Javascript
jquery 实现上下滚动效果示例代码
2013/08/09 Javascript
一个非常全面的javascript URL解析函数和分段URL解析方法
2014/04/12 Javascript
JS应用正则表达式转换大小写示例
2014/09/18 Javascript
Javascript中For In语句用法实例
2015/05/14 Javascript
JavaScript中判断两个字符串是否相等的方法
2015/07/07 Javascript
JavaScript表单验证实例之验证表单项是否为空
2016/01/10 Javascript
AngularJS中$apply方法和$watch方法用法总结
2016/12/13 Javascript
javascript设计模式之单体模式学习笔记
2017/02/15 Javascript
详解jquery选择器的原理
2017/08/01 jQuery
在 vue-cli v3.0 中使用 SCSS/SASS的方法
2018/06/14 Javascript
vue-router动态设置页面title的实例讲解
2018/08/30 Javascript
Angular CLI 使用教程指南参考小结
2019/04/10 Javascript
Vue Autocomplete 自动完成功能简单示例
2019/05/25 Javascript
小程序多图列表实现性能优化的方法步骤
2019/05/28 Javascript
解决Antd 里面的select 选择框联动触发的问题
2020/10/24 Javascript
[02:43]DOTA2英雄基础教程 半人马战行者
2014/01/13 DOTA
Python中操作MySQL入门实例
2015/02/08 Python
python读取xlsx的方法
2018/12/25 Python
Python3.5模块的定义、导入、优化操作图文详解
2019/04/27 Python
Tensorflow矩阵运算实例(矩阵相乘,点乘,行/列累加)
2020/02/05 Python
使用Python构造hive insert语句说明
2020/06/06 Python
美国创意之家:BulbHead
2017/07/12 全球购物
优秀村官事迹材料
2014/01/10 职场文书
人事主管岗位职责说明书
2014/07/30 职场文书
财产分割协议书
2016/03/22 职场文书
go 原生http web 服务跨域restful api的写法介绍
2021/04/27 Golang