「邮夢人」� 2019-11-04 18:49 采纳率: 0%
浏览 603

Python发牌游戏运行结果

为什么这个运行结果不对
class Card: FaceNum = ['1','2','3','4','5','6','7','8','9','10','11','12','13'] Suit=["梅","方","红","黑"] def init(self,FaceNum,Suit): self.FaceNum = FaceNum self.Suit=Suit def value(self,FaceNum): if(FaceNum == '1'): return "A" if(FaceNum == '11'): return "J" if(FaceNum == '12'): return "Q" if(FaceNum == '13'): return "K" def color(self,Suit): if(Suit == "梅"): return "梅花" if(Suit == "方"): return "方块" if(Suit == "红"): return "红桃" if(Suit == "黑"): return "黑桃"class Hand(): def init(self): self.cards=[] def str(self): #重写print()方法,打印出牌手的所有牌 if self.cards: rep='' for card in self.cards: rep+=str(card)+'\t' else : rep='无牌' return rep def add(self,card): self.cards.append(card) def clear(self): self.cards = [] def leave(self,card,other): self.cards.remove(card) other.cards.add(card)class Poke(Hand): def rush(self): for num in Card.FaceNum: for suit in Card.Suit: self.add(Card(suit,num)) def shuffle(self): import random random.shuffle(self.cards) def deal(self,hands,num): for hand in hands: for i in range(num): if self.cards: c = self.cards[0] self.cards.remove(c) hand.add(c) else: print("null")if name=="__main__": players=[Hand(),Hand(),Hand(),Hand()] play=Poke() play.rush() play.shuffle() play.deal(players,13) n = 1 for hand in players: print("牌手",n,end=':') print(hand) n = n+1

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-11-04 22:57
    关注

    python语言需要换行和缩进才能运行,你这么写成一坨,肯定不行。

    评论

报告相同问题?

悬赏问题

  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler