Замените строку
print 'a5[0]["enrolledcourses"]', a5[0]["enrolledcourses"]
print 'a5[0]["enrolledcourses"]', repr(a5[0]["enrolledcourses"]).decode("unicode_escape")
print 'a5[0]["enrolledcourses"]', a5[0]["enrolledcourses"]
print 'a5[0]["enrolledcourses"]', repr(a5[0]["enrolledcourses"]).decode("unicode_escape")
a5 [{'mailformat': 1, 'timezone': '99', 'lastaccess': 1356028976, 'id': 2.0, 'city': u'Одесса', 'confirmed': 1.0, 'firstaccess': 1347542739, 'descriptionformat': 1, 'theme': '', 'department': '', 'email': 'ystritsa@mail.ru', 'username': 'admin', 'description': '', 'firstname': u'Татьяна', 'lastname': u'Маркина', 'auth': 'manual', 'profileimageurl': 'http://localhost/moodle/moodle/pluginfile.php/5/user/icon/f1', 'enrolledcourses': [{'fullname': u'Охрана Труда 3', 'shortname': u'ОТ', 'id': 3}, {'fullname': u'Гражданская защита 2', 'shortname': u'ГЗ', 'id': 2}, {'fullname': u'Теория Распознавания Образов 4', 'shortname': u'ТРО', 'id': 4}], 'lang': 'ru', 'country': 'UA', 'idnumber': '', 'profileimageurlsmall': 'http://localhost/moodle/moodle/pluginfile.php/5/user/icon/f2', 'fullname': u'Татьяна Маркина'}] a5[0] {'mailformat': 1, 'timezone': '99', 'lastaccess': 1356028976, 'id': 2.0, 'city': u'Одесса', 'confirmed': 1.0, 'firstaccess': 1347542739, 'descriptionformat': 1, 'theme': '', 'department': '', 'email': 'ystritsa@mail.ru', 'username': 'admin', 'description': '', 'firstname': u'Татьяна', 'lastname': u'Маркина', 'auth': 'manual', 'profileimageurl': 'http://localhost/moodle/moodle/pluginfile.php/5/user/icon/f1', 'enrolledcourses': [{'fullname': u'Охрана Труда 3', 'shortname': u'ОТ', 'id': 3}, {'fullname': u'Гражданская защита 2', 'shortname': u'ГЗ', 'id': 2}, {'fullname': u'Теория Распознавания Образов 4', 'shortname': u'ТРО', 'id': 4}], 'lang': 'ru', 'country': 'UA', 'idnumber': '', 'profileimageurlsmall': 'http://localhost/moodle/moodle/pluginfile.php/5/user/icon/f2', 'fullname': u'Татьяна Маркина'} a5[0]["enrolledcourses"] [{'fullname': u'Охрана Труда 3', 'shortname': u'ОТ', 'id': 3}, {'fullname': u'Гражданская защита 2', 'shortname': u'ГЗ', 'id': 2}, {'fullname': u'Теория Распознавания Образов 4', 'shortname': u'ТРО', 'id': 4}]
from Tkinter import* root = Tk() def next_window(event = None): width_lb = max([len(name) for name in event]) # Определяем максимальную длину названия курса win_new = Toplevel(root) lb = Listbox(win_new, width=width_lb, height=10) lb.insert("end", *event) lb.pack() bt = Button(win_new, text=u"Выход", width=20) bt.bind("<Button-1>", close) bt.pack(pady=5) def get_user(x, win6): x_ = x.get() mdl = MDL() print mdl.conn_xmlrpc(server) user_ids = ((x_),) a5 = mdl.get_users(server, user_ids) kurs = [] for i in a5[0]['enrolledcourses']: kurs.append(i["fullname"]) win6.destroy() next_window(kurs) def close(event = None): print "try_die" def new5(event = None): win6 = Toplevel(root) win6.title("Ввод данных") lbl1 = Label(win6, text = u"Введите id пользователя") lbl1.grid(row=1,column=0,columnspan=2) x = Entry(win6, width="20") x.focus_force() x.grid(row=1,column=2,columnspan=2) but=Button(win6,text="Получить", width=18, height=2,) but.grid(row=2,column=2,ipadx=5,padx=10,pady=5) but.bind("<Button-1>", lambda e: get_user(x, win6)) but2=Button(win6,text="Закрыть", width=50, height=2, bg="white", fg="blue", command = win6.destroy) # Кнопки but2.grid(row=3,column=2,ipadx=5,padx=10,pady=5) but2.bind("<Button-1>", close) new5() root.mainloop()