我不能识别的区别:的Tkinter命令发布在Python
b = tkinter.button(...,command=FuncName())
和
b = tkinter.button(...,command=FuncName)
它似乎只能去掉括号,为什么呢?有人可以告诉我这个机制吗?
我不能识别的区别:的Tkinter命令发布在Python
b = tkinter.button(...,command=FuncName())
和
b = tkinter.button(...,command=FuncName)
它似乎只能去掉括号,为什么呢?有人可以告诉我这个机制吗?
当你写:“叫FUNCNAME()现在,它会返回一个函数时,按下按钮后称”
b = tkinter.button(...,command=FuncName())
这意味着,当你写:
b = tkinter.button(...,command=FuncName)
它的意思是“稍后调用FuncName(),当按钮被按下。”
括号调用函数,没有它们,我们只是像其他任何数据类型一样传递函数。
此代码:
b = tkinter.button(...,command=FuncName())
...是完全一样的,因为这代码:
result = FuncName()
b = tkinter.button(...,command=result)
Tkinter的需要参考的功能。当您添加()
时,您正在调用该函数,并给该函数的结果。
如果FuncName()
返回一个函数,第一个版本实际上可以正常工作。很少有人使用command
属性)。