Python 如何将功能分配给tkinter按钮?

Python 如何将功能分配给tkinter按钮?,python,tkinter,Python,Tkinter,我想在tkinter按钮中指定一个打印功能,但出现了问题 我应该改进什么 from tkinter import * import random text = random.randint(1, 5) root = Tk() root.geometry('550x350') btn = Button(root, text = 'random', bd = '5' command = lambda: btn(print(text)) btn.pack(side = '

我想在tkinter
按钮
中指定一个
打印
功能,但出现了问题

我应该改进什么

from tkinter import *
import random

text = random.randint(1, 5)
root = Tk()
root.geometry('550x350')
btn = Button(root, text = 'random', bd = '5'
             command = lambda: btn(print(text))

btn.pack(side = 'top')
root.mainloop()

小错误,
btn
未在
lambda
函数中定义,您可以在那里简单地
打印(文本)

btn = Button(root, text = 'random', bd = '5', command = lambda: print(text))
如果您希望在每次单击时都有一个随机数,可以执行以下操作

btn = Button(root, text = 'random', bd = '5', command = lambda: print(random.randint(1, 5)))

出问题了到底出了什么问题?如果发生错误,是什么?如果它没有如您所期望的那样工作,您的期望是什么?
按钮
实例是不可调用的,但您正在尝试这样做(在创建它的同一语句中)。您只需要
command=lambda:print(text)