为什么我不能在定义中定义变量?

时间:2018-03-03 23:44:56

标签: python python-3.x

我有倒计时,我无法定义变量或从外部拉变量。

这是我的变量。

go = True

这是倒计时。

def countdown(n):
while n > 0:
    print(n)
    time.sleep(1)
    n = n - 1
    if n == 0:
        print("The storm has taken you!")
        retry = input("Would you like to play again?")
        if retry == "yes" or "Yes":

这就是出现问题的地方,因为系统说“Shadows name'go'来自外部范围”并且“局部变量'go'未被使用。”

            go = True

变量'go'用于:

while go: # Beginning script!
    print("Welcome to 'Adventures into ZORK!'")
    time.sleep(1)
    print("Entering ZORK! in three...")
    time.sleep(1)
    print("two...")
    time.sleep(1)
    print("one...")
    time.sleep(1)
    go = False 

1 个答案:

答案 0 :(得分:0)

go = True替换为

global go
go = True

这种方式将在函数内部显示。或者更好,只需将global go放在函数的开头即可。或者甚至更好,只要在函数中定义,如果它没有在其他任何地方使用。