我希望我的玩家的筹码必须显示为 $xxx,但要将筹码保留为 int。我尝试了下面的代码,但 str 部分只是灰色的。我做错了什么?
class Player:
def __init__(self, name, gender, taunt, aggression, hand, chips):
self.name = name
self.gender = gender
self.taunt = taunt
self.aggression = aggression
self.hand = hand
self.chips = chips
def __str__(self):
return "${0}".format(self.chips)
最佳答案
您需要做的是取消缩进 __str__
函数,它将正常工作:
class Player:
def __init__(self, name, gender, taunt, aggression, hand, chips):
self.name = name
self.gender = gender
self.taunt = taunt
self.aggression = aggression
self.hand = hand
self.chips = chips
# Note the outdent of the function
def __str__(self):
return "${0}".format(self.chips)
关于python - 如何使用 __str__ 更改对象属性的显示方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54526906/