まず最初に、私が新人であることを明確にしたいと思います。これはおそらくこれをexec()文で書くのは間違った方法ですインデックスを作成できなかったため、これが私が思いついた解決策でした。代替案がある場合は、コードを変更して幸いです。エントリからの読み取りを読み込もうとするとエラーが発生する
私のテーブルを定義する不器用な方法は、私がここにいる理由ではありません(または、おそらく私はそれが原因で簡単に間違えたかもしれないからです)。 このコードを実行しようとすると、最後まですべてがうまく行きます。 '_tkinter.TclError:無効なコマンド名です。'というエラーメッセージが表示され、それが何であり、どのように解決するのか分かりません。
私のプログラムは、これは私が話しているコードの一部であるmax_number_of_colorsで与えられた色の設定量を読み込み、リスト
に保存する必要があります:
def get_entry_colors():
global all_colors
all_colors = []
for i in range(1,max_number_of_colors+1):
exec('all_colors['+str(i-1)+'] = int(E'+str(i)+'.get())')
return
def get_colors(max_number_of_colors):
"""
#define max_number_of_color fields with the same amount of entry boxes
"""
global setup
setup = Tk()
setup.title("Mastermind - setup")
for i in range(1,max_number_of_colors+1):
exec('global E'+str(i))
for i in range(1,max_number_of_colors+1):
exec('label'+str(i)+' = Label(setup, text="color'+str(i)+':");E'+str(i)+' = Entry(setup, bd=5)')
#define button
submit = Button(setup, text='Submit', command=get_entry_colors)
#draw the fields and entry boxes
for i in range(1,max_number_of_colors+1):
exec("label" + str(i) + ".pack();E" + str(i) + ".pack()")
#draw button
submit.pack(side=BOTTOM)
setup.mainloop()
ありがとうございましたこれを調べる
'exec'が存在することを忘れてください。データをリストや辞書に格納し、それらをループします。それであなたの問題は解決します。 – Novel