Python-为什么在声明时执行Button参数“ command”?

Python-为什么在声明时执行Button参数“ command”?,第1张

Python-为什么在声明时执行Button参数“ command”?

在为其Button分配参数时调用它:

command=Hello()

如果要传递函数(不是返回值),则应改为:

command=Hello

通常

function_name
是一个函数对象,
function_name()
就是函数返回的结果。看看这是否有帮助:

>>> def func():...     return 'hello'... >>> type(func)<type 'function'>>>> type(func())<type 'str'>

如果要传递参数,则可以使用lambda表达式构造无参数可调用对象。

>>> hi=Button(frame, text="Hello", command=lambda: Goodnight("Moon"))

简而言之,因为

Goodnight("Moon")
它位于lambda中,所以它不会立即执行,而是要等到单击按钮后才能执行。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5620652.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存