文章目录

  • 一、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相关推荐

  1. 运行python脚本时,报错InsecurePlatformWarning: A true SSLContext object is not available,解决方法

    运行python脚本时,报错InsecurePlatformWarning: A true SSLContext object is not available,解决方法 参考文章: (1)运行pyt ...

  2. 完美解决python manage.py makemigrations 报错

    pycharm界面下面的Terminal里执行 1 python manage.py makemigrations app(你所创建的app名字) 2 python manage.py migrate ...

  3. python下载库报错_下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决...

    下载python中Crypto库报错:ModuleNotFoundError: No module named 'Crypto'的解决 前言 最近在网上找了很多下载Crypto的方法,感觉作用都不算很 ...

  4. 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 ...

  5. 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 ...

  6. Python使用pip安装报错ModuleNotFoundError: No module named ‘pip._internal.cli.main‘的解决方法

    Python使用pip安装报错ModuleNotFoundError: No module named 'pip._internal.cli.main'的解决方法   大家好,我叫亓官劼(qí guā ...

  7. Python使用pip安装报错ModuleNotFoundError: No module named ‘pkg_resources‘的解决方法

    Python使用pip安装报错ModuleNotFoundError: No module named 'pkg_resources'的解决方法   大家好,我叫亓官劼(qí guān jié ),在 ...

  8. 已解决(Python爬虫requests库报错 请求异常SSL错误,证书认证失败问题)requests.exceptions.SSLError: HTTPSConnectionPool

    成功解决(Python爬虫requests库报错 请求异常,SSL错误,证书认证失败问题)requests.exceptions.SSLError: HTTPSConnectionPool(host= ...

  9. Python安装torch模块报错处理

    Python安装torch模块报错处理 前言 安装 报错 解决 查找文档 解决方案 安装 torch 等待安装完成 安装 torchvision 提示安装完成 总结 前言 因python项目上线,需要 ...

  10. 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等数据 ...

最新文章

  1. pppoe设计的一般性
  2. 高可用flume-ng搭建
  3. C++常量指针this
  4. 转]SQLServerDBA十大必备工具
  5. AnalyticDB - 分析型数据库
  6. Origin绘制上面和右边边框
  7. POJ1164 The Castle【DFS】
  8. Java从键盘获取两个输入值并计算和
  9. IE6丢失COOKIE的问题,令人郁闷的P3P协议
  10. 远程桌面工具mRemoteNG与Tsmmc
  11. 扫描二维码,下载Android安装包
  12. oracle random函数用法,Oracle随机函数的用法
  13. C语言自己编写头文件
  14. 【关于四足机器人那些事】足端轨迹规划-八次多项式轨迹
  15. [附源码]JAVA+ssm计算机毕业设计高铁乘坐舒适性在线调查及评价系统(程序+Lw)
  16. docker制作tomcat镜像并部署war包
  17. 一道面试题:你了解哪些编译器优化行为?知道Copy elision 、RVO吗?
  18. 国外著名大学网络课堂
  19. 数据分析面试必考的AB-Test详解
  20. java 框架GAT_GAT2.0使用文档(组合接口测试)

热门文章

  1. rk3588s-pc gt911 gt9xx驱动
  2. cefsharp获取ajax返回值,使用javascript从CefSharp浏览器获取文本框的值
  3. xss注入教程与总结
  4. Python之路,Day2 - Python基础2
  5. NOIP 2015 提高组 初赛
  6. Python3入门指南(持续更新)
  7. 金融壹账通亮相2020全球智博会 AI技术赋能金融多领域
  8. windows live mail 尝试打开该邮件时出错
  9. vue自定义指令用法
  10. android系统设置无障碍,RK3326 Android 8.1 为自己的APK的服务默认开启无障碍权限,避免使用时还是有一个小跳转:设置的无障碍选项...