python:如何删除此代码中的 lambda?

标签 python tkinter lambda

我是编程新手,不知道如何在编程中使用 lambda。我问是否有办法编辑此代码,以便我不需要在其上使用 lambda。

from tkinter import *
def define(a):
    pass

root = Tk()

#this line
auto = Button(root, text="auto", command=lambda: define(True)).pack()

最佳答案

如果您想从代码中删除 lambda,则必须定义一个函数返回另一个函数 define

也就是说,

def replacement():
    return define(argument)

这样您就不必在调用 Button 时使用 lambda。相反,您可以将 Button 称为:

auto = Button(root, text="auto", command=replacement).pack()

我希望这有帮助。但是,您应该了解 lambda 是什么。

关于python:如何删除此代码中的 lambda?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66184769/

相关文章:

c# - 在 linqQuery 中只返回部分字符串

c# - 为 lambda 声明提供的参数数量不正确

python - 为公共(public) django 站点制作测试代码

python - 选择要在 Django 中使用的正确设置文件

python - 如何在 tkinter python 中打开 gif 文件?

python - .after() 方法递归

Python:导入导入模块的模块

python - 由于旧的解释器版本,如何优雅地处理失败的 future 功能(__future__)导入?

python - ValueError:无效的文件路径或缓冲区对象类型:<class 'tkinter.StringVar'>

c# - 这个 lambda 表达式可以变得更简单吗?