我是python的新手,也许有人可以解释一下?
我试图给一个变量赋值取决于是或否。

def direction(decision):
    if decision == "x":
        x_var.set(CW)
    elif decision == "z":
        x_var.set(CCW)
    return


direction(x)

print(x_var)

最佳答案

为了更改在函数内部的函数外部定义的变量,您需要使用nonlocalglobal将其带入范围,但这不是一个好习惯。

您可以返回所需的值,然后直接在函数调用之外分配它。

def direction(decision):
    if decision.lower() == "x":
        return CW
    elif decision.lower() == "z":
        return CCW
    return None

x_var = direction(decision)

09-28 06:45