Форум сайта python.su
Почему не работает такой код?
from tkinter import * root = Tk() lis_but = [b1,b2,b3,b4,b5] for i in lis_but: i = Button(root) i.pack()
Отредактировано zipsetic (Апрель 17, 2012 17:38:34)
Офлайн
Думаю, проблема в том, что нужно писать вот так
list_but = ["b1","b2","b3"]
from tkinter import * root = Tk() b1 = Button() b2 = Button() b3 = Button() # ...И так 10 раз:D
Отредактировано zipsetic (Апрель 17, 2012 17:48:25)
Офлайн
from tkinter import * root = Tk() buttons = {} for i in range(10): tmp = Button(root) tmp.pack() buttons["b{}".format(i+1)] = tmp
Офлайн
pyuser
from tkinter import *
root = Tk()
buttons = {}
for i in range(10):
tmp = Button(root)
tmp.pack()
buttons = tmp
"b{}".format
Офлайн
новая функция форматирования строк, можете заменить на
"b%d" % i+1
Офлайн