Я новичок в программировании.У меня вопрос по поводу dictionary
, я провел некоторые исследования, но все еще не решил проблему.Я создал словарь, используя целые 0, 1, 2 и 3 в качестве ключа и (words)
в качестве содержимого.Я пытался использовать функцию get()
для получения ключа в словаре и пытался распечатать содержимое в операторе if, но он выводит None.Ниже приведена кодировка (не полная, но я беру соответствующие части):
Это словарь:
class Fact(object):
facts = {
0 : "I heard something... someone saying...\nI... I... oh yes! The killer is a guy!.",
1 : "2",
2 : "3"
}
И вот как я кодирую.
class People(object):
def __init__(self, vital, mental, evidance_count):
self.vital = vital
self.mental = mental
self.evidance_count = evidance_count
def evidance(self, locate):
return Fact.facts.get(locate)
def talk(self):
talk = self.evidance(self.evidance_count)
self.evidance_count += 1
Я также создал класс Andy, который наследует класс People, удалил несвязанную часть:
class Andy(People):
def play(self):
if self.mental < 6: #i only coded some basic print and raw_input before this part to reach my desired self.mental value = 4 which is less than 6.
print self.talk()
else:
print "You did't get any hint from Andy."
return Andy(self.vital, self.mental, self.evidance_count)
Это конечная часть моего кода для инициации кодов:
hint = 0
andy = Andy(1, 5, hint)
andy.play()
print andy.vital
print andy.mental
print andy.evidance_count
Iне получил ошибку.Но это:
None
1
4
1
Я ожидал получить это:
I heard something... someone saying...\nI... I... oh yes! The killer is a guy!.
1
4
1
Кто-нибудь знает, какая часть моего кода пошла не так ??