我正在尝试创建一个使用类来运行的二十一点游戏。我相信我已经成功地制作了一个针对卡片的课程
class Card(object):
def __init__(self,suit,number):
self.suit=suit
self.number=number
然后我做了一个类,它需要一副牌,然后洗牌,它的发牌也是如此,我认为这个类也是正确的(我对发牌功能有点不确定)
class DeckofCards(object):
def __init__(self,deck):
self.deck=deck
self.shuffledeck=self.shuffle()
print(self.shuffledeck)
def shuffle(self):
b=[]
count=0
while count<len(self.deck):
a=randrange(0,len(self.deck))
if a not in b:
b.append(self.deck[a])
count+=1
return(b)
def deal(self):
if len(self.shuffledeck)>0:
return(self.shuffledeck.pop(0)) #removes the card from the deck and deals it
else:
shuffle(self)
return(self.shuffledeck.pop(0))
然后我为玩家创建了一个类,这就是我开始困惑的地方,我希望插入老师的直接问题是可以的,因为这对我来说非常模棱两可和困惑。
类播放器(对象):
“”” 这个类是为游戏中的玩家准备的(庄家被认为是玩家,虽然我可以为庄家创建一个单独的类。)构造函数有 6 个属性:玩家的名字,手牌(最初是一个空列表),布尔值inout,初始化为True(表示玩家“入”),布尔值blackjack,初始化为False(表示玩家没有二十一点),整数money,表示玩家拥有的总金额,得分,初始化为 0,整数出价,初始化为 0,将保存玩家当前的出价。
这是我的尝试
class Player(object):
def __init__(self,name,hand,inout,money,score):
self.name=name
self.hand=hand
self.inout=inout
self.money=money
self.score=score
self.blackjack=self.blackjacksearch()
def blackjacksearch(self): #not sure if any of this works
if Card('H','J') in self.hand:
return(False)
if Card('S','J') in self.hand:
return(False)
if Card('C','J') in self.hand:
return(False)
if Card('D','J') in self.hand:
return(False)
else:
return(True)
完整的路线可以在这里找到
我只是在寻找一些方向,因为我一无所知,我们的教授一点帮助也没有。