参考链接: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