如何使用python开发游戏,如何使用python开发游戏

如何使用python开发游戏

发布时间:2020-11-30 13:59:33

来源:亿速云

阅读:58

作者:小新

这篇文章给大家分享的是有关如何使用python开发游戏的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。

游戏介绍:四名牌手打牌,电脑随机將52张牌(不合大、小王)发给四名牌手,并在屏幕上显示每位牌手的牌。

代码:class Card():

""" A playing card. """

RANKS=["A","2","3","4","5","6","7","8","9","10","J","Q","K"] #牌面数字1-13

SUITS=["梅","方","红","黑"]

#梅为梅花,方为方钻,红为红心,黑为黑桃

def __init__(self,rank,suit,face_up=True):

self.rank=rank       #指的是牌面数字1-13

self.suit=suit       #suit指的是花色

self.is_face_up=face_up  #是否显示牌正面,True为正面,False为牌背面

def __str__(self): #print()

if self.is_face_up:

rep=self.suit+self.rank #+" "+str(self.pic_order())

else:

rep="XX"

return rep

def flip(self):        #翻牌方法

self.is_face_up=not self.is_face_up

def pic_order(self):      #牌的顺序号

if self.rank=="A":

FaceNum=1

elif self.rank=="J":

FaceNum=11

elif self.rank=="Q":

FaceNum=12

elif self.rank=="K":

FaceNum=13

else:

FaceNum=int(self.rank)

if self.suit=="梅":

Suit=1

elif self.suit=="方":

Suit=2

elif self.suit=="红":

Suit=3

else:

Suit=4

return (Suit-1)*13+FaceNum

class Hand( ):

""" A hand of playing cards. """

def __init__(self):

self.cards=[]

def __str__(self):

if self.cards:

rep=""

for card in self.cards:

rep+=str(card)+"\t"

else:

rep="无牌"

return rep

def clear(self):

self.cards=[]

def add(self,card):

self.cards.append(card)

def give(self,card,other_hand):

self.cards.remove(card)

other_hand.add(card)

class Poke(Hand):

""" A deck of playing cards. """

def populate(self):     #生成一副牌

for suit in Card.SUITS:

for rank in Card.RANKS:

self.add(Card(rank,suit))

def shuffle(self):      #洗牌

import random

random.shuffle(self.cards) #打乱牌的顺序

def deal(self,hands,per_hand=13):

for rounds in range(per_hand):

for hand in hands:

top_card=self.cards[0]

self.cards.remove(top_card)

hand.add(top_card)

if __name__=="__main__":

print("This is a module with classed for playing cards.")

#四个玩家

players=[Hand(),Hand(),Hand(),Hand()]

poke1=Poke()

poke1.populate()      #生成一副牌

poke1.shuffle()       #洗牌

poke1.deal(players,13)   #发给玩家每人13张

#显示四位牌手的牌

n=1

for hand in players:

print("牌手",n,end=":")

print(hand)

n=n+1

input("\nPress the enter key to exit.")

感谢各位的阅读!关于如何使用python开发游戏就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值