Исключение в обратном вызове Tkinter
Traceback (последний вызов был последним):
File "C:\Users\USER1\AppData\Local\Programs\Python\Python37\lib\tkinter\__init__.py", line 1702, in __call__
return self.func(*args)
File "C:/Users/USER1/AppData/Local/Programs/Python/Python37/newWidget.py", line 54, in clickedEvaluate
txt.insert(END,s[i] +">>>>>>>>>" + Dicesim + "\n")
TypeError: can only concatenate str (not "StringVar") to str
текст выше показывает сообщение об ошибке
Dicesim=StringVar()
def clickedEvaluate():
if txt1.get()=='':
messagebox.showerror('Empty entry', 'You have not entered the required first text for comparison')
txt1.focus()
else:
combo = Combobox(window)
combo['values']= ('Dice', 'Bigram', 'Trigram', 'Set-Based','NS-Sim')
combo.current(0) #set the selected item
combo.grid(column=0, row=4)
file=open('db_word.txt','r')
s=file.readlines()
txt = ScrolledText(window,width='50',height='10',wrap=WORD)
txt.grid(column=1,row=6)
#txt.pack()
if combo.get()=='Dice':
for i in range(20):
Dicesim.set(dice(txt1.get(),s[i]))
txt.insert(END,s[i] +">>>>>>>>>" + Dicesim + "\n")
txt.yview(END)
Ожидаемый результат для отображения
's [i] + ">>>>>>>>>" + Dicesim + "\ n"'. это в строке при выполнении dice()
, StringVar
, Dicesim
не распознается в методе txt.insert
.