Python问题:'Nonetype' object is not iterable


【解析】

这个错误提示一般发生在将None赋给多个值时。

 

【案例】

定义了如下的函数

复制代码
def test(): if value == 1: a = b = 1 return a,b value = 0 a,b = test()
复制代码

执行这段测试程序会报错:"TypeError: 'NoneType' object is not iterable"

这里是没有考虑到else的情况,在if条件不满足时,函数默认返回None。

调用时,将None赋给 a,b

等价于 a,b = None

就出现了这样的错误提示。

 

【结论】

1. 将None赋给多个值时,会出现提示:TypeError: 'NoneType' object is not iterable

2. 函数返回值一定要考虑到条件分支的覆盖

3. 在没有return语句时,python默认会返回None

知识要大家一起分享,但带上原文链接是对作者的尊重。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM