【问题标题】:'int' object is not iterable in python'int' 对象在 python 中不可迭代
【发布时间】:2014-11-04 21:11:07
【问题描述】:

我不断收到错误'int' object is not iterable,但我不知道为什么,有什么建议吗?

def printMatching(seq1, seq2):
is_match = []
if len(seq1) < len(seq2):
    short_seq = seq1
else:
    short_seq = seq2
for i in len(short_seq):
    if seq1(i) == seq2(i):
        is_match.append(true)
    else:
        is_match.append(false)

def main():
    seq1 = "abaababb"
    seq2 = "aabbaababa"
    printMatching(seq1, seq2)

【问题讨论】:

  • for i in len(short_seq) 是错误的。不能迭代一个数字。这只是一个数字。使用for i in range(num) 迭代[0..n) 或直接迭代序列。在这种情况下,我怀疑使用 zip 和/或理解会很有用。

标签: python object int iterable


【解决方案1】:
for i in range(len(short_seq))

您当前正在循环一个数字,这是不允许的。 range(int) 从 [0,input) 创建一个值列表。

【讨论】:

    【解决方案2】:
    for i in len(short_seq): 
    

    此行有错误。你需要有类似的东西

    for i in range(len(short_seq)):
    

    i in - 这基本上检查 i 在可迭代中。由于 len(short_seq) 不是可迭代的,因此会引发错误。

    【讨论】:

      猜你喜欢
      • 2015-04-14
      • 2022-07-01
      • 2015-04-06
      • 2013-10-31
      • 2016-02-24
      • 2023-03-07
      • 1970-01-01
      • 2013-08-02
      相关资源
      最近更新 更多