【问题标题】:python object not iterable error in function函数中的python对象不可迭代错误
【发布时间】:2013-06-18 01:24:56
【问题描述】:

我有一个简单的函数如下

comdList = range(0,27)
for t, in comdList:
    print t

但是它返回一个 in object not iterable 错误

在函数之外它工作正常。怎么回事??

【问题讨论】:

    标签: python python-2.7 for-loop iterable


    【解决方案1】:

    试试这个:

    for t in comdList:
        print t
    

    t 变量之后的额外逗号导致了错误,因为它 Python 认为可迭代对象将返回要解包的 1 元组序列 - 例如:((1,), (2,)) 但它收到了一个可迭代对象单个元素。

    【讨论】:

    • @Óscar López - 哦,逗号...呃,它总是你错过的最明显的事情,谢谢
    • @Darran 不客气!请不要忘记accept这个或您认为有帮助的任何其他答案,只需单击其左侧的复选标记;)
    • 实际上,for t, in comdList 仅在 comdList 是 1 元组序列 ((1,), (2,), ...) 而非高维元组序列时才有效。
    猜你喜欢
    • 2013-07-02
    • 2017-06-22
    • 2014-10-09
    • 2017-06-29
    • 1970-01-01
    • 2017-03-22
    • 1970-01-01
    • 2018-04-30
    • 1970-01-01
    相关资源
    最近更新 更多