Skip to main content
 首页 » 编程设计

检查函数返回值时出现 Python TypeError

2025年05月04日17leader

我是 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"