溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用python開發(fā)游戲

發(fā)布時間:2020-11-30 13:59:33 來源:億速云 閱讀:126 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關如何使用python開發(fā)游戲的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

 游戲介紹:四名牌手打牌,電腦隨機將52張牌(不合大、小王)發(fā)給四名牌手,并在屏幕上顯示每位牌手的牌。

代碼:

class Card():
  """ A playing card. """
  RANKS=["A","2","3","4","5","6","7","8","9","10","J","Q","K"] #牌面數(shù)字1-13
  SUITS=["梅","方","紅","黑"]
#梅為梅花,方為方鉆,紅為紅心,黑為黑桃
 
  def __init__(self,rank,suit,face_up=True):
    self.rank=rank       #指的是牌面數(shù)字1-13
    self.suit=suit       #suit指的是花色
    self.is_face_up=face_up  #是否顯示牌正面,True為正面,F(xiàn)alse為牌背面
 
  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)   #發(fā)給玩家每人13張
  #顯示四位牌手的牌
  n=1
  for hand in players:
    print("牌手",n,end=":")
    print(hand)
    n=n+1
  input("\nPress the enter key to exit.")

感謝各位的閱讀!關于如何使用python開發(fā)游戲就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI