У меня есть словарь с объектами, хранящимися как значения. Как я могу получить доступ и распечатать атрибуты определенного объекта? Например,Python: Доступ к атрибутам объектов из объектов, хранящихся в словаре
dict={0:obj0, 1:obj1, 2:obj2, 3:obj3}
Я хочу напечатать obj1.attribute. Я пробовал:
print (dict[key]).attribute
не имеет смысла. Я не могу просто получить доступ к объекту напрямую, потому что я не присвоил его переменной. Эта программа автоматически генерирует объекты и помещает их в dict с автоматически сгенерированным ключом, что избавляет меня от ручной присвоения произвольного количества значений. Если кто-то знает лучший способ рассказать этот вопрос, пожалуйста, продолжайте. Спасибо огромное!
EDIT: имя моего слова не является «dict», и мой атрибут не назван «атрибутом». Они используются просто для ясности.
EDIT: Хорошо, вот что происходит. Я использую Tkinter для получения контактной информации через поля ввода. Я использую этот вход, чтобы создать объект с именем атрибутов, адрес и т.д. Так,
class User():
def __init__(self, name='', street='', city='', state='', zip=''):
self.name=name
self.street=street
self.city=city
self.state=state
self.zip=zip
###### code below is outside of class User #####
def make(name='', street='', city='', state='', zip='', count=0):
dic[count]=User(name='', street='', city='', state='', zip='')
Есть ли причина того, что «DIC [0] .name» будет возвращать пустую строку?
Вы используете 'getattr':' getattr (d [key], attribute_name) '. – Blender
Это не работает, к сожалению. – johnnyRose
Можете ли вы опубликовать * функциональный * пример своей проблемы? Я не понимаю ваш вопрос только с кодом, который вы предоставили. – Blender