[英]__str__ method on list of objects
python 新手,试图创建一个卡片组,并希望为 print(deck) => 实现一种打印方法,该方法给出了我的卡片的打印列表。
我的类 PlayingCard 有一个str方法,它可以很好地打印一张卡片。
但是当我创建我的 Deck.cards 对象(它是一个 PlayingCard 对象列表)时,我似乎无法一次打印所有卡片。
尝试用repr替换str 。 尝试返回str中的字符串列表
from enum import Enum
class Value(Enum):
Two = 2
Three = 3
Four = 4
Five = 5
Six = 6
Seven = 7
Eight = 8
Nine = 9
Ten = 10
Jack = 11
Queen = 12
King = 13
Ace = 14
class Suit(Enum):
Spades = 1
Hearts = 2
Clubs = 3
Diamonds = 4
class PlayingCard():
def __init__(self,value,suit):
self.value = value
self.suit = suit
def __str__(self):
return '{} of {}'.format(Value(self.value).name, Suit(self.suit).name)
class Deck():
def __init__(self):
self.cards=[PlayingCard(val,suit) for val in Value for suit in Suit]
def __str__(self):
return str(self.cards)
deck = Deck()
print(deck)
退货
[<__main__.PlayingCard object at 0x000001875FEC0080>,
<__main__.PlayingCard object at 0x000001875FE9EE48>,
....
....
]
python 新手,试图创建一个卡片组,并希望为 print(deck) => 实现一种打印方法,该方法给出了我的卡片的打印列表。
我的类 PlayingCard 有一个str方法,它可以很好地打印一张卡片。
但是当我创建我的 Deck.cards 对象(它是一个 PlayingCard 对象列表)时,我似乎无法一次打印所有卡片。
尝试用repr替换str 。 尝试返回str中的字符串列表
from enum import Enum
class Value(Enum):
Two = 2
Three = 3
Four = 4
Five = 5
Six = 6
Seven = 7
Eight = 8
Nine = 9
Ten = 10
Jack = 11
Queen = 12
King = 13
Ace = 14
class Suit(Enum):
Spades = 1
Hearts = 2
Clubs = 3
Diamonds = 4
class PlayingCard():
def __init__(self,value,suit):
self.value = value
self.suit = suit
def __str__(self):
return '{} of {}'.format(Value(self.value).name, Suit(self.suit).name)
class Deck():
def __init__(self):
self.cards=[PlayingCard(val,suit) for val in Value for suit in Suit]
def __str__(self):
return str(self.cards)
deck = Deck()
print(deck)
退货
[<__main__.PlayingCard object at 0x000001875FEC0080>,
<__main__.PlayingCard object at 0x000001875FE9EE48>,
....
....
]
python 新手,试图创建一个卡片组,并希望为 print(deck) => 实现一种打印方法,该方法给出了我的卡片的打印列表。
我的类 PlayingCard 有一个str方法,它可以很好地打印一张卡片。
但是当我创建我的 Deck.cards 对象(它是一个 PlayingCard 对象列表)时,我似乎无法一次打印所有卡片。
尝试用repr替换str 。 尝试返回str中的字符串列表
from enum import Enum
class Value(Enum):
Two = 2
Three = 3
Four = 4
Five = 5
Six = 6
Seven = 7
Eight = 8
Nine = 9
Ten = 10
Jack = 11
Queen = 12
King = 13
Ace = 14
class Suit(Enum):
Spades = 1
Hearts = 2
Clubs = 3
Diamonds = 4
class PlayingCard():
def __init__(self,value,suit):
self.value = value
self.suit = suit
def __str__(self):
return '{} of {}'.format(Value(self.value).name, Suit(self.suit).name)
class Deck():
def __init__(self):
self.cards=[PlayingCard(val,suit) for val in Value for suit in Suit]
def __str__(self):
return str(self.cards)
deck = Deck()
print(deck)
退货
[<__main__.PlayingCard object at 0x000001875FEC0080>,
<__main__.PlayingCard object at 0x000001875FE9EE48>,
....
....
]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.