我已经查看了关于 stackoverflow 的其他问题,但它们有所不同并且似乎不适用于这个问题,所以这里开始吧。
我编写了一个简单的脚本,可以打印出 1-49 之间的每个数字,并使用范围函数将其放入列表中。
现在我已经定义了一个函数来计算哪些数字是奇数,哪些数字是偶数,这是我的代码:
def check(number):
if number%2==0:
print "Even Numbers:",(number)
else:
print "Odd Numbers:",(number)
a = range(1,50)
print a
check(a)
运行脚本时出现以下错误:
unsupported operand type(s) for %: 'list' and 'int'
所以我知道这意味着 % 运算符不能不支持“列表”或“整数”,但我该如何修复它?
我试过这个:
def check(number):
if number%2==0:
print "Even Numbers:",(number)
else:
print "Odd Numbers:",(number)
a = range(1,50)
b = str(a)
check(str(a))
但是得到错误:
Traceback (most recent call last):
File "showEvenNumbers.py", line 12, in <module>
check(str(a))
File "showEvenNumbers.py", line 2, in check
if number%2==0:
TypeError: not all arguments converted during string formatting
所以我有点不确定该怎么做。
如有任何帮助,我们将不胜感激。
请您参考如下方法:
a 是一个列表,但 check 需要一个整数。您需要遍历列表:
for item in a:
check(item)
