Так что в этом примере, хотя вы больше не можете ссылаться на предыдущие loopRads, python, очевидно, все еще знает, что оно существует, верно? Вот почему, когда вызывается виджет радио-кнопки, он работает правильно? Таким образом, в основном Python знает, на какую loopRad вы ссылаетесь, когда нажимаете радиокнопки?
colors = ['red', 'blue', 'gold']
def radCall(*args):
radSel = radVar.get()
if radSel == 0:
root.configure(background=colors[0])
elif radSel == 1:
root.configure(background=colors[1])
elif radSel == 2:
root.configure(background=colors[2])
for col in range(3):
loopRad = ttk.Radiobutton(root, text=colors[col], variable=radVar, value=col, command=radCall)
loopRad.grid(row=5, column=col, sticky='w')