Я начинающий программист, начинающий с Python, и пытаюсь создать простую систему атрибутов, способную взаимодействовать с другими разделами программы (например, с операторами def).Исходя из скудного объема знаний, которые у меня есть в настоящее время по языку Python, я предполагаю, что лучший способ выполнить эту задачу - использовать класс в сочетании с операторами def для создания команд и действий, относящихся к рассматриваемому классу.Всякий раз, когда я пытаюсь запустить свой код, я сталкиваюсь с этой ошибкой:
if petname['hungry'] == True:
TypeError: 'type' object is not subscriptable
Опять же, у меня сейчас очень ограниченный объем знаний, поэтому я не знаю, близка ли моя программа кможно использовать, или если это просто бесполезный мусор.Я выложу свой код здесь.Я был бы очень признателен за некоторую коррективную критику;или, черт возьми, если бы кто-то мог правильно переписать это для меня, это было бы здорово!
Вот код, который я написал.Дайте мне знать, если потребуется дополнительная информация, чтобы дать исчерпывающий ответ:
petname = 'Dog'
class petname (object):
attributes = {'health': 20, 'attack': 4, 'size': 5, 'hunger': True}
def feed(petname):
if petname['hungry'] == True:
petname['hungry'] = False
petname['size'] = petname['size'] + 1
print("{0} happily gobbles down the treat!".format(petname))
else:
print("{0} is not hungry.".format(petname))
if petname['hungry'] == True:
print("{0} is hungry! Feed it something!".format(petname))
input()