我有一个对象列表(这是一个游戏),我想让列表本身成为一个对象。
第一个对象是卡片:
class card (object):
def __init__ (self,suit,value):
self.suit = suit
self.value = value
def cardpointvalue(self):
#not relevant, basically says if card is this return this value for it
# there is also a __str__ function and a ___repr___ function, don't think
# they are important
这就是我的卡片对象,我也有一个手对象,这是我遇到问题的地方。
class hand (object):
def __init__ (self,list_cards):
self.list_cards = list_cards
def hand_value (self):
for i in list:
handpointvalue += (i.cardpointvalue())
return handpointvalue
在我的 main() 中,这是我遇到麻烦的地方。
我有列表,我将卡片组中的每张卡片都变成卡片对象。然后我将它们传递到名为 list1 和 list2 的人手中(对于每个玩家,为简单起见,我将只处理 list1)。
一旦我将每个玩家的卡片传递到他们的列表中。我尝试将列表放入手对象,然后handpointvalue
在它们上运行函数。
所以
for i in range(10):
one_card = card_deck.pop(0) #each card is an object at this point
list1.append(one_card)
print (list1) #just testing, get a list of each card object
这是我遇到麻烦的地方。我尝试了多种方法,最新的是:
hand(list1)
print (list1.handpointvalue())
为什么这不起作用?如何将此对象列表变成对象本身?