参数未通过部分传递

人类机器人关系

对 Python 完全陌生,所以我怀疑我犯了一个非常愚蠢的语法错误。

from tkinter import *
from functools import partial

def get_search_results(keyword):
    print("Searching for: ", keyword)

def main():
    # ***** Toolbar *****
    toolbar = Frame(main_window)
    toolbar.pack(fill=X)

    toolbar_search_field = Entry(toolbar)
    toolbar_search_field.grid(row=0, columnspan=4, column=0)
    get_search_results_partial = partial(get_search_results, toolbar_search_field.get())
    toolbar_search_button = Button(toolbar, text="Search", command=get_search_results_partial)
    toolbar_search_button.grid(row=0, column=5)

main_window = Tk()
main()
main_window.mainloop() # continuously show the window

基本上,这段代码创建了一个带有搜索栏的窗口。我在搜索栏中输入了一些东西,当我按下按钮时,get_search_results 方法被调用。我在函数中传递关键字,使用部分。但是,关键字没有打印到控制台。

亚历克斯·霍尔
get_search_results_partial = partial(get_search_results, toolbar_search_field.get())

这会toolbar_search_field.get()立即调用(大概是获取一个空字符串),然后将其传递给 partial。现在get_search_results_partial是一个零参数的函数,它只调用get_search_results(''). 它与工具栏没有任何联系。

正如评论中所建议的那样,只需执行以下操作:

Button(toolbar, text="Search", command=lambda: get_search_results(toolbar_search_field.get()))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

JavaScript未通过代理传递

来自分类Dev

PHP MySQL通过html表单插入查询,参数未通过

来自分类Dev

通过Func <>传递参数

来自分类Dev

接口未通过引用传递

来自分类Dev

如果未修改,PHP是否会优化未通过引用显式传递的数组类型的函数参数?

来自分类Dev

通过EventEmitter传递参数

来自分类Dev

tkinter中的值未通过按钮传递

来自分类Dev

Angular资源参数未通过

来自分类Dev

剂量值未通过验证正确传递

来自分类Dev

Rails部分本地未通过

来自分类Dev

Branch.io未通过通用链接查询参数传递$ uri_redirect_mode = 2重定向URL

来自分类Dev

外部PHP数据未通过AJAX传递

来自分类Dev

数据未通过url传递

来自分类Dev

数据未通过JQuery AJAX请求传递

来自分类Dev

$ _POST变量未通过表单传递

来自分类Dev

JavaScript未通过代理传递

来自分类Dev

POST参数未通过API请求传递给控制器

来自分类Dev

为什么@Model尚未通过jquery脚本传递给控制器的action参数?

来自分类Dev

字体路径未通过意图传递

来自分类Dev

PDO参数未通过,但sprintf是

来自分类Dev

Java通用类型参数未通过验证

来自分类Dev

接口未通过引用传递

来自分类Dev

覆盖方法(如果未通过参数传递)

来自分类Dev

Angular资源参数未通过

来自分类Dev

所有参数未通过

来自分类Dev

asp.net MVC 参数未通过

来自分类Dev

未通过函数调用 JavaScript 传递 ID

来自分类Dev

参数未通过(bash)

来自分类Dev

Rails 部分未通过创建操作刷新