Уведомления

Группа в Telegram: @pythonsu

#1 Март 14, 2014 23:42:55

catalyst306
Зарегистрирован: 2013-09-22
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Непонятна строка с get()

Здраствуйте!
Не совсем понятна вот эта строка, объясните, пожалуйста, что она делает?
key = entries.get()

Спасибо.

def makeWidgets():
    global entries
    window = Tk()
    window.title('People Shelve')
    form = Frame(window)
    form.pack()
    entries = {}
    for (ix, label) in enumerate(('key',) + fieldnames):
        lab = Label(form, text=label)
        ent = Entry(form)
        lab.grid(row=ix, column=0)
        ent.grid(row=ix, column=1)
        entries[label] = ent       
                                   
    Button(window, text="Fetch", command=fetchRecord).pack(side=LEFT)
    Button(window, text="Update", command=updateRecord).pack(side=LEFT)
    Button(window, text="Quit", command=window.quit).pack(side=RIGHT)
    return window
def fetchRecord():
   key = entries['key'].get()      # что делает это строка? каким боком там .get используется?
    try:
        record = db[key]             
    except:
        showerror(title='Error', message="No such key!")
    else:
        for field in fieldnames:
            entries[field].delete(0, END)         
            entries[field].insert(0, repr(getattr(record, field)))'''так же не совсем понятно как заполняются строки, пользователь вводит только "key" и после нажатия "fetch", строки заполняются. скрин прикреплен '''

скрин: http://imageup.ru/s1686214

Отредактировано catalyst306 (Март 14, 2014 23:56:40)

Офлайн

#2 Март 15, 2014 08:19:18

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Непонятна строка с get()

catalyst306
судя по всему entries это словарь, элемент словаря entries это какой то объект у которого вызывается метод get(). Что это за объект по коду можно предположить что Entry. Как на самом деле знаете Вы.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Март 16, 2014 23:30:28

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Непонятна строка с get()

...
entries = {}
    for (ix, label) in enumerate(('key',) + fieldnames):
        lab = Label(form, text=label)
        ent = Entry(form)
        lab.grid(row=ix, column=0)
        ent.grid(row=ix, column=1)
        entries[label] = ent      
...
entries это словарь. в него записываються объекты Entry.
key = entries['key'].get()
здесь извлекаються объекты (значения) по ключу ‘key’ и уже в объектов Entry вызываеться метод get()!



————————————————
-*- Simple is better than complex -*-

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version