Python关于None的报错:'NoneType' object is not iterable和cannot unpack non-iterable NoneType object
文章目录
- 一、TypeError:'NoneType' object is not iterable(类型错误:'NoneType'对象不是可迭代的)
- 二、TypeError: cannot unpack non-iterable NoneType object(类型错误:无法解包非迭代的NoneType对象)
一、TypeError:‘NoneType’ object is not iterable(类型错误:'NoneType’对象不是可迭代的)
原因:遍历的对象为 None 。
例子:
items = None
for item in items:print(item)
报错:
Traceback (most recent call last):
File “d:\Projects\Python\PythonCrawler\weibo_ajax\test.py”, line 2, in
for item in items:
TypeError: ‘NoneType’ object is not iterable
解决方法(先判断迭代对象是否为空):
items = None
if items:for item in items:print(item)
二、TypeError: cannot unpack non-iterable NoneType object(类型错误:无法解包非迭代的NoneType对象)
原因:将单个 None 赋给了多个值。
例子:
value = 0def test():if value == 1:a = b = 1return a, ba, b = test()
print(a, b)
报错:
Traceback (most recent call last):
File “d:\Projects\Python\PythonCrawler\weibo_ajax\test.py”, line 10, in
a, b = test()
TypeError: cannot unpack non-iterable NoneType object
首先,要知道 python 中每个函数在没有确定的 return 语句时,都是默认返回 None。因此,在上述例子中函数 test() 不满足 if 条件判断,所以最后返回的是默认的 None ,然后又把单个 None 赋值给 a,b ,所以就报错了。
解决方法(加上else判断):
value = 0def test():if value == 1:a = b = 1return a, belse:return 1, 2a, b = test()
print(a, b)
注意:else 的 return 可以返回任意类型,但必须返回两个,否则还会报错。
Python关于None的报错:'NoneType' object is not iterable和cannot unpack non-iterable NoneType object相关推荐
- 运行python脚本时,报错InsecurePlatformWarning: A true SSLContext object is not available,解决方法
运行python脚本时,报错InsecurePlatformWarning: A true SSLContext object is not available,解决方法 参考文章: (1)运行pyt ...
- 完美解决python manage.py makemigrations 报错
pycharm界面下面的Terminal里执行 1 python manage.py makemigrations app(你所创建的app名字) 2 python manage.py migrate ...
- python下载库报错_下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决...
下载python中Crypto库报错:ModuleNotFoundError: No module named 'Crypto'的解决 前言 最近在网上找了很多下载Crypto的方法,感觉作用都不算很 ...
- python打开xml文件报错:UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xb7 in position 58: illegal multi
本篇文章主要讲解,python打开xml文件报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xb7 in position 58: ille ...
- Vue报错:Uncaught TypeError: Cannot assign to read only property ‘exports‘ of object 的解决方法
Vue报错:Uncaught TypeError: Cannot assign to read only property 'exports' of object 的解决方法 参考文章: (1)Vue ...
- Python使用pip安装报错ModuleNotFoundError: No module named ‘pip._internal.cli.main‘的解决方法
Python使用pip安装报错ModuleNotFoundError: No module named 'pip._internal.cli.main'的解决方法 大家好,我叫亓官劼(qí guā ...
- Python使用pip安装报错ModuleNotFoundError: No module named ‘pkg_resources‘的解决方法
Python使用pip安装报错ModuleNotFoundError: No module named 'pkg_resources'的解决方法 大家好,我叫亓官劼(qí guān jié ),在 ...
- 已解决(Python爬虫requests库报错 请求异常SSL错误,证书认证失败问题)requests.exceptions.SSLError: HTTPSConnectionPool
成功解决(Python爬虫requests库报错 请求异常,SSL错误,证书认证失败问题)requests.exceptions.SSLError: HTTPSConnectionPool(host= ...
- Python安装torch模块报错处理
Python安装torch模块报错处理 前言 安装 报错 解决 查找文档 解决方案 安装 torch 等待安装完成 安装 torchvision 提示安装完成 总结 前言 因python项目上线,需要 ...
- Python中调用FRED报错ValueError: time data 'fred' does not match format '%Y-%m-%d'
Python中调用FRED报错ValueError: time data 'fred' does not match format '%Y-%m-%d' 小白一枚,刚学习python调用FRED等数据 ...
最新文章
- pppoe设计的一般性
- 高可用flume-ng搭建
- C++常量指针this
- 转]SQLServerDBA十大必备工具
- AnalyticDB - 分析型数据库
- Origin绘制上面和右边边框
- POJ1164 The Castle【DFS】
- Java从键盘获取两个输入值并计算和
- IE6丢失COOKIE的问题,令人郁闷的P3P协议
- 远程桌面工具mRemoteNG与Tsmmc
- 扫描二维码,下载Android安装包
- oracle random函数用法,Oracle随机函数的用法
- C语言自己编写头文件
- 【关于四足机器人那些事】足端轨迹规划-八次多项式轨迹
- [附源码]JAVA+ssm计算机毕业设计高铁乘坐舒适性在线调查及评价系统(程序+Lw)
- docker制作tomcat镜像并部署war包
- 一道面试题:你了解哪些编译器优化行为?知道Copy elision 、RVO吗?
- 国外著名大学网络课堂
- 数据分析面试必考的AB-Test详解
- java 框架GAT_GAT2.0使用文档(组合接口测试)
热门文章
- rk3588s-pc gt911 gt9xx驱动
- cefsharp获取ajax返回值,使用javascript从CefSharp浏览器获取文本框的值
- xss注入教程与总结
- Python之路,Day2 - Python基础2
- NOIP 2015 提高组 初赛
- Python3入门指南(持续更新)
- 金融壹账通亮相2020全球智博会 AI技术赋能金融多领域
- windows live mail 尝试打开该邮件时出错
- vue自定义指令用法
- android系统设置无障碍,RK3326 Android 8.1 为自己的APK的服务默认开启无障碍权限,避免使用时还是有一个小跳转:设置的无障碍选项...