Python问题:'Nonetype' object is not iterable

 

参考链接:http://blog.csdn.net/dataspark/article/details/9953225

 

【解析】

这个错误提示一般发生在将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

    原文作者:时光不改
    原文地址: https://www.cnblogs.com/zhaijiahui/p/8391701.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞