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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM