我正在Coursera中做一个迷你项目。 (Card
是已宣布的其他地方其他类)。使用__str__打印对象的数组元素
class Deck:
def __init__(self):
self.deck = []
for i in SUITS:
for j in RANKS:
self.deck.append(Card(str(i), str(j)))
def deal_card(self):
self.temp = random.randrange(0,52)
return(self.deck[self.temp])
def __str__(self):
#TODO
main()
test_deck = Deck()
c1 = test_deck.deal_card()
print test_deck
据我所知,名单self.deck
包含卡对象的列表,谁能告诉我如何打印的self.deck
的值(这个对象指的是)在我的__str__
方法?
你必须对你期望的输出字符串看起来更具体。如果你想要的文字相当于调用'print(self.deck)',只需'return str(self.deck)'。但除此之外,我们需要知道您的输出格式需要什么。 – aruisdante 2014-10-29 19:17:03
你的问题的文字回答是'str(self.deck)',但我想你还在问更多。你期待什么作为输出? – 2014-10-29 19:21:05
作为一个方面说明,你不应该在Python 2.x中使用'class Deck:';总是使用'class Deck(object):'。否则,你正在创建一个旧式的课程,这很糟糕。 (如果你想知道_why_这是不好的,你必须了解旧式类,以及许多其他你可能逃脱不了的东西,然后准备好去Python 3。x其中没有任何问题了......但如果您好奇,请搜索文档。) – abarnert 2014-10-29 19:24:17