Skip to main content
 首页 » 编程设计

Python之% : 'list' and 'int' 不支持的操作数类型

2025年05月04日11飞鱼

我已经查看了关于 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)