Почему этот скрипт печатает постороннее «нет» в выводе
Я написал простой сценарий, который поможет мне лучше понять использование классов. Он генерирует случайный персонаж для игры. Я определил объект и затем вызвал функцию для этого объекта, которая печатает сгенерированный символ. В конце печатного блока есть постороннее «Нет», я не уверен, откуда он исходит и почему он печатается. Вот пример вывода:
ted
Strength : 20
Dexterity : 17
Hit Points: 100
Aura : 100
Weapon :
Spell :
Item :
Element :
--------------------
None
В моем коде последняя строкаplayer.stats()
являетсяprint "-" * 20
который отображается прямо над "Нет". Вот код, который определяет объект:
class Player(object):
def __init__(self, name):
self.name = name
self.strength = randint(15, 20)
self.dexterity = randint(15, 20)
self.hit_points = 100
self.aura = 100
self.weapon = " "
self.spell = " "
self.item = " "
self.element = " "
def stats(self):
print "\n"
print self.name
print "Strength : %d" % self.strength
print "Dexterity : %d" % self.dexterity
print "Hit Points: %d" % self.hit_points
print "Aura : %d" % self.aura
print "Weapon : %s" % self.weapon
print "Spell : %s" % self.spell
print "Item : %s" % self.item
print "Element : %s" % self.element
print "-" * 20
Затем объект создается с использованием этого:
name = raw_input("Name your character: ")
player = Player(name)
print player.stats()
Полный код можно прочитатьздесь, в Pastebin если необходимо.