如何用python开发游戏,学会python可以开发游戏吗
相信大家都玩过扑克。这款游戏是一款非常受欢迎的休闲娱乐游戏。一副扑克牌可以玩出各种花样。你知道扑克游戏网站是怎么发卡的吗?记得边肖当初打算学python的时候,很大一部分是想自己开发一些游戏。今天,边肖将以你为例,用python开发一个游戏。
游戏介绍:四个著名的玩家玩牌。电脑将52张牌(不分大小)随机分配给四位著名玩家,并在屏幕上显示每位玩家的牌。
代码:
classCard():
一张贺卡
Ranks=[a , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , J , Q , K] #卡号1-13
西装=[梅,方,红,黑]
#梅花是梅花,方钻,红心,黑桃。
def__init__(self,rank,suit,face_up=True):
Self.rank=rank#是指卡号1-13。
Self.suit=西装#西装是指颜色。
Self.is_face_up=face_up#是否显示卡片正面,True为正面,False为背面。
def__str__(self):#print()
如果
self.is_face_up:
rep=self.suit+self.rank#+""+str(self.pic_order())
else:
rep="XX"
returnrep
defflip(self):#翻牌方法
self.is_face_up=notself.is_face_up
defpic_order(self):#牌的顺序号
ifself.rank=="A":
FaceNum=1
elifself.rank=="J":
FaceNum=11
elifself.rank=="Q":
FaceNum=12
elifself.rank=="K":
FaceNum=13
else:
FaceNum=int(self.rank)
ifself.suit=="梅":
Suit=1
elifself.suit=="方":
Suit=2
elifself.suit=="红":
Suit=3
else:
Suit=4
return(Suit-1)*13+FaceNum
classHand():
"""Ahandofplayingcards."""
def__init__(self):
self.cards=[]
def__str__(self):
ifself.cards:
rep=""
forcardinself.cards:
rep+=str(card)+"\t"
else:
rep="无牌"
returnrep
defclear(self):
self.cards=[]
defadd(self,card):
self.cards.append(card)
defgive(self,card,other_hand):
self.cards.remove(card)
other_hand.add(card)
classPoke(Hand):
"""Adeckofplayingcards."""
defpopulate(self):#生成一副牌
forsuitinCard.SUITS:
forrankinCard.RANKS:
self.add(Card(rank,suit))
defshuffle(self):#洗牌
importrandom
random.shuffle(self.cards)#打乱牌的顺序
defdeal(self,hands,per_hand=13):
forroundsinrange(per_hand):
forhandinhands:
top_card=self.cards[0]
self.cards.remove(top_card)
hand.add(top_card)
if__name__=="__main__":
print("Thisisamodulewithclassedforplayingcards.")
#四个玩家
players=[Hand(),Hand(),Hand(),Hand()]
poke1=Poke()
poke1.populate()#生成一副牌
poke1.shuffle()#洗牌
poke1.deal(players,13)#发给玩家每人13张
#显示四位牌手的牌
n=1
forhandinplayers:
print("牌手",n,end=":")
print(hand)
n=n+1
input("\nPresstheenterkeytoexit.")
到了这一步,一款发牌游戏基本就算完成了,其实还是可以添加一点游戏背景音乐的,感兴趣的小伙伴们可以尝试下哦~更多python学习推荐:盛行IT软件开发工作室。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。