如何解决python字符串格式?

2024-05-13 11:50:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我为一个简单的数学写了下面的代码。据我所知,它应该工作得很好。但是字符串格式有错误。显示“NameError:name'guess'未定义”消息的shell。但是变量已经在那里定义了。你知道吗

import random
import re

#select a random number
myNumber = random.randint(1, 20)


#loop for the game
while True:
    try:
        guess = int(input("Guess a number and put here : "))
    except ValueError:
        print("not a number {}".format(guess))
    else:
        if not guess in range(1, 20):
            print('Put only number between 1 - 20')
            continue
        elif guess == myNumber:
            print("that's right")
            break
        else: 
            print("Bummer!")

Tags: 字符串代码nameimportnumber格式错误not
1条回答
网友
1楼 · 发布于 2024-05-13 11:50:26

只有在try子句中没有出现错误时,才会定义guess。因此,当一个错误被抛出时,guess将永远不会被定义,Python将抛出一个NameError。需要在try/except块之前给guess一个默认值。或者,正如@John Gordon所提到的,您可以在for循环之外获取用户输入,并且只尝试在try子句中重新定义为整数。你知道吗

相关问题 更多 >