运行 从 tkinter 文本小部件检索到的列表中的函数
Running functions on list retrieved from tkinter text widget
我无法将函数应用到从 tkinter 文本小部件检索到的列表。该列表通过按钮 command=lambda: get_list())
检索。我正在尝试应用 def func_1():
,但它不会引发错误,它只是在我输入任何数据之前 运行 立即应用它。
dictionary = {
'A': '1',
'B': '2',
'C': '3'}
def get_list():
text_input = text.get("1.0", "end-1c").split("\n")
return text_input
def func_1(text_input):
x=0
while x < len(text_input):
text_replace = (text_input[x]).replace(',', '')
text_split = text_replace.split()
not_found = True
for key in dictionary:
if key in text_split:
result = dictionary[key]
return (result)
not_found = False
break
if not_found :
return ("Some Error Message")
x = x + 1
print(func_1(get_list()))
如果我输入几行;
1. A, D, E
2. B
3. C
它跳过 func_1
,并说明如果未找到文本:
Some Error Message
我需要它 get
文本小部件输入,在 "\n"
处拆分为一个列表,并且 运行 func_1
在与输入的行一样多的项目上小部件。
func_1 应该获取每个列表项,替换任何逗号,然后将其拆分为自己的 for 循环列表。
我不确定如何以不同的方式分解它。
感谢任何建议!
I need it to get the text widget input, split into a list at "\n", and run func_1 on as many items as were lines input into the widget.
如果是这种情况,那么您需要完全这样做:运行 func_1
每行:
text_input = text.get("1.0", "end-1c").split("\n")
for line in text_input:
func_1(line)
我无法将函数应用到从 tkinter 文本小部件检索到的列表。该列表通过按钮 command=lambda: get_list())
检索。我正在尝试应用 def func_1():
,但它不会引发错误,它只是在我输入任何数据之前 运行 立即应用它。
dictionary = {
'A': '1',
'B': '2',
'C': '3'}
def get_list():
text_input = text.get("1.0", "end-1c").split("\n")
return text_input
def func_1(text_input):
x=0
while x < len(text_input):
text_replace = (text_input[x]).replace(',', '')
text_split = text_replace.split()
not_found = True
for key in dictionary:
if key in text_split:
result = dictionary[key]
return (result)
not_found = False
break
if not_found :
return ("Some Error Message")
x = x + 1
print(func_1(get_list()))
如果我输入几行;
1. A, D, E
2. B
3. C
它跳过 func_1
,并说明如果未找到文本:
Some Error Message
我需要它 get
文本小部件输入,在 "\n"
处拆分为一个列表,并且 运行 func_1
在与输入的行一样多的项目上小部件。
func_1 应该获取每个列表项,替换任何逗号,然后将其拆分为自己的 for 循环列表。
我不确定如何以不同的方式分解它。
感谢任何建议!
I need it to get the text widget input, split into a list at "\n", and run func_1 on as many items as were lines input into the widget.
如果是这种情况,那么您需要完全这样做:运行 func_1
每行:
text_input = text.get("1.0", "end-1c").split("\n")
for line in text_input:
func_1(line)