我是 python 的新手。我在评估 if 语句中的函数时遇到问题。这里有一些非常简单的代码:
import sys
number = sys.argv
def is_even(n):
if n%2==0:
return true
else:
return false
if is_even(number):
print "The number is even"
else:
print "The number is not even"
当我尝试运行我得到的代码时:
TypeError: unsupported operand type(s) for %: 'list' and 'int'
不知道这里发生了什么。有人可以给我一些指示,指出我可能做错了什么吗?
请您参考如下方法:
sys.argv 是一个字符串列表。第一个字符串是脚本的名称,因此您需要的是获取第二个字符串并将其转换为 int。
import sys
number = int(sys.argv[1]) # Changed this line
def is_even(n):
if n%2==0:
return true
else:
return false
if is_even(number):
print "The number is even"
else:
print "The number is not even"
