【发布时间】:2015-05-14 13:37:04
【问题描述】:
是否有类似于 C# 方法的 python Tkinter 的 listbox.contains()?
我知道答案可能是否定的,但我需要检查列表框项中的前 6 个字符是否存在,
【问题讨论】:
是否有类似于 C# 方法的 python Tkinter 的 listbox.contains()?
我知道答案可能是否定的,但我需要检查列表框项中的前 6 个字符是否存在,
【问题讨论】:
没有。但是,所有基本功能都可供您自己编写。它看起来像这样:
class CustomListbox(tk.Listbox):
def __contains__(self, str):
return str in self.get(0, "end")
lb = CustomListbox(...)
...
lb.insert("end", "foo")
...
if "foo" in lb:
print "success"
或者,使用 lambda 将函数附加到标准列表框:
lb = tk.Listbox(...)
lb.__contains__ = lambda str: str in lb.get(0, "end")
...
lb.insert("end", "foo")
...
if "foo" in lb:
print "success"
【讨论】:
你可以写一个这样的方法:
def contain(item):
iscontain= item in listbox.get(0, "end")
return iscontain
【讨论】: