파이썬에서 텍스트 기반 모험을 만들고 있습니다. 나는 파이썬에 관한 두 권의 책을 준비하고 온라인 과정을 밟았으므로, 나는 모든 기초를 정말로 가지고 있다고 생각한다.언 바운드 메서드 오류 - 텍스트 기반 어드벤처
이제 현재 내 항목을 만들고 있습니다. 내 설정은
항목 -> 무기 -> (여기 특정 무기)입니다.
모든 클래스는 이전 버전을 상속합니다.
Holy_Sword 및 Stick과 같은 항목의 값을 인쇄 할 수 없습니다. 클래스로 생성하지 않고 변수를 사용하여 무기의 인스턴스를 만드는 경우 인쇄 할 수 있습니다. 그러나, 내가 더하고 싶은 것 때문에, 나는 정말로 그들이 수업이되기를 바란다.
내가 점점 오전 오류 : 첫 번째 인수 (대신 아무것도 없어)로 Holy_Sword 인스턴스를 호출 할 필요가
언 바운드 방법 STR()
내 코드는 다음과 같습니다
class Item(object):
def __init__(self, name, value, description):
self.name = name
self.value = value
self.description = description
def item_description(self):
return "Your %s is worth %d gold and is a %s" % (self.name, self.value, self.description)
class Weapon(Item):
def __init__(self,name, value,description, attack):
self.attack = attack
super(Weapon, self).__init__(name, value, description)
def __str__(self):
return "Your %s is worth %d gold and has an Attack Damage of %d, it is %s" % (self.name, self.value, self.attack, self.description)
class Stick(Weapon):
def __init__(self, name, value, description, attack):
super(Stick, self).__init__(name = "Stick", value= 1, description = "A stick...there may be potential here....or not.", attack = 1)
class Holy_Sword(Weapon):
def __init__(self, name, value, description, attack):
super(Holy_Sword, self).__init__(name = "The Holy Sword of Antioch", value= 20, description = "A Sword whose potential far outweighs it's lack of stylishness ", attack = 20)
class Sword(Weapon):
def __init__(self, name, value, description, attack):
super(Sword, self).__init__(name = "Sword", value= 3, description = "A Wooden Sword.", attack = 5)
print Holy_Sword.__str__()