Python:未定义变量

Python: Variable is not defined

我正试图创建一个python程序来决定这个值是奇数还是偶数。这是我的代码:

1
2
3
4
5
6
7
8
9
10
11
def odd_or_even (a, b):
    if a % 2 == 0:
        b ="EVEN"
    else:
        b ="ODD"

    return x

odd_or_even (9, x)

print x

当我在终端中运行它时,这是错误:

回溯(最近一次呼叫的最后一次):文件"py.py",第9行,in奇数或偶数(9,x)名称错误:未定义名称"x"

请帮忙!?


不能像在Python中那样通过参数列表返回值。也许你想要如下的东西:

1
2
3
4
5
6
7
8
9
10
11
def odd_or_even (a):
    if a % 2 == 0:
        b ="EVEN"
    else:
        b ="ODD"

    return b

x = odd_or_even (9)

print x

在本例中,odd_or_even函数使用return语句返回一个值("EVEN""ODD"。调用者将这个返回值分配给x,然后打印出来。


如果我理解正确,"b"是您希望从函数返回的结果。在这种情况下,不需要将"b"传递给函数。

试试这个:

1
2
3
4
5
6
7
8
def odd_or_even (x):
    if x % 2 == 0:
        result = x +" IS EVEN"
    else:
        result = x +" IS ODD"
    return result

print odd_or_even(9)


好吧,你永远不会说什么是x

1
2
3
4
5
6
7
 def odd_or_even (a, b):
    if a % 2 == 0:
      b ="EVEN"
    else:
      b ="ODD"

     return x // <---- this function knows nothing about this value

您需要在函数中输入return b,而不需要输入b:

1
2
3
4
5
6
7
def odd_or_even (a):
    if a % 2 == 0:
      b ="EVEN"
    else:
      b ="ODD"

     return b // <-- the function set b

当调用函数时,不需要变量

x = odd_or_even(9)

那就只有print x