内置函数或方法对象不可迭代

builtin function or method object is not iterable

我也是 Python 和 Whosebug 的新手。我正在尝试编写一个程序来区分奇数和偶数,但我遇到了这个错误。帮助!。这是我的程序:

print("Enter the 10 numbers separated by space to distinguish : ")
string1 = str(input())
if len(string1) == 10 or 20:
    list1 = string1.split
    for num in list1:
        #check for odd
        if num % 2 == 0 :
            print(num)
        else:
            print(f'Odd number : {num}')
else:
    print("Please enter 10 numbers")

这段代码有几个问题:

  • string1 = str(input()) input 已经是 returns 字符串,不需要调用 str
  • list1 = string1.split 您忘记 () 实际调用 split 方法。
  • if len(string1) == 10 or 20: 并不像您认为的那样。它将始终计算为 True,因为它被解释为 (len(string1) == 10) or 20。你想要 len(string1) in (10, 20)
  • num % 2 == 0 num 将是一个字符串,你想要 int(num) % 2 == 0.