如何重新启动该功能?
How do I restart the function?
每次单击按钮并执行函数时,我都尝试打印随机整数,但是,除非我重新启动程序,否则我只会得到相同的结果。
这是我的代码:
num1= randint(0,9)
testbtn_txt = tk.StringVar()
testbtn = tk.Button(root, textvariable=testbtn_txt, command=lambda:testfunc(), font="Arial", bg="#808080", fg="white", height=1, width=10)
testbtn_txt.set("Test")
testbtn.grid(row=10, column=0, columnspan=2, pady=5, padx=5)
def testfunc():
print(num1)
那我该怎么做呢?
将随机数生成移至函数中。 randint
并不神奇 - 您必须再次调用它才能获得新的随机数。
def testfunc():
num1 = randint(0,9)
print(num1)
num1
被初始化为一个随机值,但该值在程序运行期间一直保留。相反,您可以将随机化移动到函数本身:
def testfunc():
num1 = randint(0,9)
print(num1)
或者更简洁:
def testfunc():
print(randint(0,9))
这样做:
def testfunc(): print(randint(0,9))
或
def getnum(): return randint(0,9)
def testfunc(): print(getnum())
每次单击按钮并执行函数时,我都尝试打印随机整数,但是,除非我重新启动程序,否则我只会得到相同的结果。
这是我的代码:
num1= randint(0,9)
testbtn_txt = tk.StringVar()
testbtn = tk.Button(root, textvariable=testbtn_txt, command=lambda:testfunc(), font="Arial", bg="#808080", fg="white", height=1, width=10)
testbtn_txt.set("Test")
testbtn.grid(row=10, column=0, columnspan=2, pady=5, padx=5)
def testfunc():
print(num1)
那我该怎么做呢?
将随机数生成移至函数中。 randint
并不神奇 - 您必须再次调用它才能获得新的随机数。
def testfunc():
num1 = randint(0,9)
print(num1)
num1
被初始化为一个随机值,但该值在程序运行期间一直保留。相反,您可以将随机化移动到函数本身:
def testfunc():
num1 = randint(0,9)
print(num1)
或者更简洁:
def testfunc():
print(randint(0,9))
这样做:
def testfunc(): print(randint(0,9))
或
def getnum(): return randint(0,9)
def testfunc(): print(getnum())