我创建了一个数字猜谜游戏。但是,我一直遇到错误。
问题是当我运行它并输入数字时它最终会说该数字高于 74(这是一个示例)但低于 75...如果我设置一个特定的数字它工作正常,但是当我生成一个随机数,它不起作用。
import random
from tkinter import *
def checkInput():
randomNumber = random.randint(1,100)
user_guess = int(user_input.get())
if user_guess == randomNumber:
print("You got it!")
if user_guess > randomNumber:
print("Guess lower!")
if user_guess < randomNumber:
print("Guess higher!")
root = Tk()
user_input = Entry(root)
user_input.pack()
check_button = Button(root,text="Check",command=checkInput) .pack()
reset_button = Button(root,text="Reset") .pack()
root.mainloop
问题是您在“checkInput”函数中生成随机数,每次您按下“Check”按钮时都会调用和更改该随机数。你应该做的是在“checkInput”函数之外生成一次随机数,例如看下面的代码:
import random
from tkinter import *
def checkInput():
user_guess = int(user_input.get())
if user_guess == randomNumber:
print("You got it!")
if user_guess > randomNumber:
print("Guess lower!")
if user_guess < randomNumber:
print("Guess higher!")
randomNumber = random.randint(1,100)
root = Tk()
user_input = Entry(root)
user_input.pack()
check_button = Button(root,text="Check",command=checkInput) .pack()
reset_button = Button(root,text="Reset") .pack()
root.mainloop()
这基本上是您自己的代码,稍作改动就是您生成随机数的行现在已从“checkInput”函数中移出。
祝你好运......
我是一名优秀的程序员,十分优秀!