如何在python tkinter上创建真值表?

如何在python tkinter上创建真值表?,python,user-interface,tkinter,Python,User Interface,Tkinter,我想要一个真值表,用户可以在其中输入输入和输出的值。我尝试过用条目来创建它,但是代码重复了很多次,我想知道是否有更简单的方法来创建真值表 我曾尝试使用for循环来创建条目,但总是出现错误。我还想知道如何检查用户是否为真值表输入了正确的值,我有一个包含问题和答案的文本文件,但我不知道如何让程序检查文本文件中的答案。 谢谢你的帮助 这是条目的代码: 从tkinter进口* root=Tk() input1Lb=Label(root,text="input 1") input1Lb.grid(row=

我想要一个真值表,用户可以在其中输入输入和输出的值。我尝试过用条目来创建它,但是代码重复了很多次,我想知道是否有更简单的方法来创建真值表

我曾尝试使用for循环来创建条目,但总是出现错误。我还想知道如何检查用户是否为真值表输入了正确的值,我有一个包含问题和答案的文本文件,但我不知道如何让程序检查文本文件中的答案。 谢谢你的帮助

这是条目的代码: 从tkinter进口*

root=Tk()
input1Lb=Label(root,text="input 1")
input1Lb.grid(row=0,column=0)
input2Lb=Label(root,text="input 2")
input2Lb.grid(row=0,column=1)
input3Lb=Label(root,text="input 3")
input3Lb.grid(row=0,column=2)
input4Lb=Label(root,text="input 4")
input4Lb.grid(row=0,column=3)
qLb=Label(root,text="Answer")
qLb.grid(row=0,column=6)

tt1=Entry(root)
tt1.grid(row=17,column=0)
tt2=Entry(root)
tt2.grid(row=17,column=1)
tt3=Entry(root)
tt3.grid(row=17,column=2)
tt4=Entry(root) 
tt4.grid(row=17,column=3)
tt5=Entry(root)
tt5.grid(row=17,column=4)
tt6=Entry(root)
tt6.grid(row=17,column=5) 
tt7=Entry(root)
tt7.grid(row=17,column=6)

tt8=Entry(root)
tt8.grid(row=1,column=0)
tt9=Entry(root) 
tt9.grid(row=1,column=1)
tt10=Entry(root)
tt10.grid(row=1,column=2)
tt11=Entry(root)
tt11.grid(row=1,column=3)
tt12=Entry(root)
tt12.grid(row=1,column=4)
tt13=Entry(root)
tt13.grid(row=1,column=5)
tt14=Entry(root)
tt14.grid(row=1,column=6)

tt15=Entry(root)
tt15.grid(row=2,column=0)
tt16=Entry(root)
tt16.grid(row=2,column=1)
tt17=Entry(root)
tt17.grid(row=2,column=2)
tt18=Entry(root)
tt18.grid(row=2,column=3)
tt19=Entry(root)
tt19.grid(row=2,column=4)
tt20=Entry(root)
tt20.grid(row=2,column=5)
tt21=Entry(root)
tt21.grid(row=2,column=6)

tt22=Entry(root)
tt22.grid(row=3,column=0)
tt23=Entry(root)
tt23.grid(row=3,column=1)
tt24=Entry(root)
tt24.grid(row=3,column=2)
tt25=Entry(root)
tt25.grid(row=3,column=3)
tt26=Entry(root)
tt26.grid(row=3,column=4)
tt27=Entry(root) 
tt27.grid(row=3,column=5)
tt28=Entry(root)
tt28.grid(row=3,column=6)

tt29=Entry(root)
tt29.grid(row=4,column=0)
tt30=Entry(root)
tt30.grid(row=4,column=1)
tt31=Entry(root)
tt31.grid(row=4,column=2)
tt32=Entry(root)
tt32.grid(row=4,column=3)
tt33=Entry(root)
tt33.grid(row=4,column=4)
tt34=Entry(root)
tt34.grid(row=4,column=5)
tt35=Entry(root)
tt35.grid(row=4,column=6)

tt36=Entry(root)
tt36.grid(row=5,column=0)
tt37=Entry(root)
tt37.grid(row=5,column=1)
tt38=Entry(root)
tt38.grid(row=5,column=2)
tt39=Entry(root)
tt39.grid(row=5,column=3)
tt40=Entry(root)
tt40.grid(row=5,column=4)
tt41=Entry(root)
tt41.grid(row=5,column=5)
tt42=Entry(root)
tt42.grid(row=5,column=6)

tt43=Entry(root)
tt43.grid(row=6,column=0)
tt44=Entry(root)
tt44.grid(row=6,column=1)
tt45=Entry(root)
tt45.grid(row=6,column=2)
tt46=Entry(root)
tt46.grid(row=6,column=3)
tt47=Entry(root)
tt47.grid(row=6,column=4)
tt48=Entry(root)
tt48.grid(row=6,column=5)
tt49=Entry(root)
tt49.grid(row=6,column=6)

tt50=Entry(root)
tt50.grid(row=7,column=0)
tt51=Entry(root)
tt51.grid(row=7,column=1)
tt52=Entry(root)
tt52.grid(row=7,column=2)
tt53=Entry(root)
tt53.grid(row=7,column=3)
tt54=Entry(root)
tt54.grid(row=7,column=4)
tt55=Entry(root)
tt55.grid(row=7,column=5)
tt56=Entry(root)
tt56.grid(row=7,column=6)

tt57=Entry(root)
tt57.grid(row=8,column=0)
tt58=Entry(root)
tt58.grid(row=8,column=1)
tt59=Entry(root)
tt59.grid(row=8,column=2)
tt60=Entry(root)
tt60.grid(row=8,column=3)
tt61=Entry(root)
tt61.grid(row=8,column=4)
tt62=Entry(root)
tt62.grid(row=8,column=5)
tt63=Entry(root)
tt63.grid(row=8,column=6)

tt64=Entry(root)
tt64.grid(row=9,column=0)
tt65=Entry(root)
tt65.grid(row=9,column=1)
tt66=Entry(root)
tt66.grid(row=9,column=2)
tt67=Entry(root)
tt67.grid(row=9,column=3)
tt68=Entry(root)
tt68.grid(row=9,column=4)
tt69=Entry(root)
tt69.grid(row=9,column=5)
tt70=Entry(root)
tt70.grid(row=9,column=6)

tt71=Entry(root)
tt71.grid(row=10,column=0)
tt72=Entry(root)
tt72.grid(row=10,column=1)
tt73=Entry(root)
tt73.grid(row=10,column=2)
tt74=Entry(root)
tt74.grid(row=10,column=3)
tt75=Entry(root)
tt75.grid(row=10,column=4)
tt76=Entry(root)
tt76.grid(row=10,column=5)
tt77=Entry(root)
tt77.grid(row=10,column=6)

tt78=Entry(root)
tt78.grid(row=11,column=0)
tt79=Entry(root)
tt79.grid(row=11,column=1)
tt80=Entry(root)
tt80.grid(row=11,column=2)
tt81=Entry(root)
tt81.grid(row=11,column=3)
tt82=Entry(root)
tt82.grid(row=11,column=4)
tt83=Entry(root)
tt83.grid(row=11,column=5)
tt84=Entry(root)
tt84.grid(row=11,column=6)

tt85=Entry(root)
tt85.grid(row=10,column=0)
tt86=Entry(root)
tt86.grid(row=10,column=1)
tt87=Entry(root)
tt87.grid(row=10,column=2)
tt88=Entry(root)
tt88.grid(row=10,column=3)
tt89=Entry(root)
tt89.grid(row=10,column=4)
tt90=Entry(root)
tt90.grid(row=10,column=5)
tt91=Entry(root)
tt91.grid(row=10,column=6)

tt92=Entry(root)
tt92.grid(row=11,column=0)
tt93=Entry(root)
tt93.grid(row=11,column=1)
tt94=Entry(root)
tt94.grid(row=11,column=2)
tt95=Entry(root)
tt95.grid(row=11,column=3)
tt96=Entry(root)
tt96.grid(row=11,column=4)

tt97=Entry(root)
tt97.grid(row=12,column=0)
tt98=Entry(root)
tt98.grid(row=12,column=1)
tt99=Entry(root)
tt99.grid(row=12,column=2)
tt100=Entry(root)
tt100.grid(row=12,column=3)
tt101=Entry(root)
tt101.grid(row=12,column=4)
tt102=Entry(root)
tt102.grid(row=12,column=5)
tt103=Entry(root)
tt103.grid(row=12,column=6)

tt104=Entry(root)
tt104.grid(row=13,column=0)
tt105=Entry(root)
tt105.grid(row=13,column=1)
tt106=Entry(root)
tt106.grid(row=13,column=2)
tt107=Entry(root)
tt107.grid(row=13,column=3)
tt108=Entry(root)
tt108.grid(row=13,column=4)
tt109=Entry(root)
tt109.grid(row=13,column=5)
tt110=Entry(root)
tt110.grid(row=13,column=6)

tt110=Entry(root)
tt110.grid(row=14,column=0)
tt111=Entry(root)
tt111.grid(row=14,column=1)
tt112=Entry(root)  
tt112.grid(row=14,column=2)
tt113=Entry(root)
tt113.grid(row=14,column=3)
tt114=Entry(root)
tt114.grid(row=14,column=4)  
tt115=Entry(root)
tt115.grid(row=14,column=5)
tt116=Entry(root)
tt116.grid(row=14,column=6)

tt117=Entry(root)
tt117.grid(row=15,column=0)
tt118=Entry(root)
tt118.grid(row=15,column=1)
tt119=Entry(root)
tt119.grid(row=15,column=2)
tt120=Entry(root) 
tt120.grid(row=15,column=3)
tt121=Entry(root)
tt121.grid(row=15,column=4)
tt122=Entry(root)
tt122.grid(row=15,column=5)
tt123=Entry(root)
tt123.grid(row=15,column=6)

tt124=Entry(root)
tt124.grid(row=16,column=0)
tt125=Entry(root)
tt125.grid(row=16,column=1)
tt126=Entry(root)
tt126.grid(row=16,column=2)
tt127=Entry(root)
tt127.grid(row=16,column=3)
tt128=Entry(root)
tt128.grid(row=16,column=4)
tt129=Entry(root)
tt129.grid(row=16,column=5)
tt130=Entry(root)
tt130.grid(row=16,column=6)
root.mainloop()
(请投我赞成票或反对票)

你的意思是(运行它,你会理解):

但是真相表很难制作一点。你应该做一个解析器来理解输入5。我认为答案不应该是一个条目

编辑:

from tkinter import *
root = Tk()
labels = [None] * 5
for i in range(len(labels)):
    text = "input "+str(i+1)
    labels[i] = Label(root,text=text)
    labels[i].grid(row=0, column=i)
qLb=Label(root,text="Answer")
qLb.grid(row=0,column=5)
tt = [[None] * 6] * 17
for i in range(len(tt)):
    for n in range(len(tt[i])):
        tt[i][n] = Entry(root)
        tt[i][n].grid(row=i+1, column=n)
root.mainloop()
更聪明。而且容易得多

#if u wanna get a input use this:
#tt[rowIndexOfInputWhatRUWant][columnIndexOfInputWhatRUWant].get()
#example:
print(tt[1][3].get())
#that means get value of entry in 2nd row,3th column

循环。你需要学会使用循环。不要创建130个包含tkinter小部件的变量;把它们放在一个列表中。
#if u wanna get a input use this:
#tt[rowIndexOfInputWhatRUWant][columnIndexOfInputWhatRUWant].get()
#example:
print(tt[1][3].get())
#that means get value of entry in 2nd row,3th column