python - 如何将迭代值作为参数发送到 lambda 函数?
问题描述
我在 Tkinter 上构建了一个带有复选框的下拉菜单,当我迭代元素时,我尝试在循环中初始化复选框,并且对于每个复选框,我想要不同 lambda
的函数,这些函数使用我在特定迭代中获得的元素。
mb = Menubutton(self, text="Select", elief=RAISED)
mb.menu = Menu(mb,tearoff = 0)
mb["menu"] = mb.menu
for elem in self.files:
mb.menu.add(checkbutton(label = elem, variable = elem, command=lambda: print(elem)))
我得到的输出是一个空字符串。
解决方案
推荐阅读
- javascript - 检查 javascript 对象是否具有嵌套的键值对
- javascript - Javascript 上的异步和等待函数
- javascript - 顶点标签在图中应该是唯一的吗?
- azure - 在没有客户端密码的情况下使用 Azure KeyVault Rest API 进行身份验证?
- awk - 如何提取键值对并将值分配给bash脚本中的变量
- python - 有没有办法将位于 docker 容器中的 excel 文件调用到 python 中?
- javascript - React native - 在一天的特定时间调用函数
- php - 如何在 PHP 中使用 TripleDES 加密对字符串进行加密
- javascript - 为什么 ag-grid 过滤器比较器没有执行?
- java - Springboot Websocket 数据包在浏览器之前发送但丢弃。解决方法?