运用类完成一个扑克牌类(无大小王)的小游戏: 用户需要输入用户名,以下为用户可选选项: 1. 洗牌 2. 随机抽取一张 3. 指定抽取一张 4. 从小到大排序 5. 退出

洗牌:每次执行的结果顺序随机。

随机抽取一张:显示结果为:太白金星您随机抽取的牌为:黑桃K

指定抽取一张: 用户输入序号(1~52) 比如输入5,显示结果为:太白金星您抽取的第5张牌为:黑桃A

将此牌从小到大显示出来。A -> 2 -> 3 .......-> K

提供思路: 52张牌可以放置一个容器中。 用户名,以及盛放牌的容器可以封装到对象属性中。

low版 import random class Cards: def init(self,name,allcards): self.name = name self.allcards = allcards

def shuffle_card(self):

print(list(set(self.allcards)))

def take_card(self):

z1 = self.allcards

random.shuffle(z1)

print(f'{self.name}您随机抽取的牌为:{z1[0]}')

def draw(self):

num = int(input('请输入指定的牌顺序:').strip())

print(f'{self.name}您抽取的第{num}张牌为:{self.allcards[num - 1]}')

def sorting(self):

print(self.allcards)

def end(self):

exit()

print('1.洗牌\n2.随机抽取一张\n3.指定抽取一张\n4.从小到大排序\n5.退出\n')

n = input('请输入用户名:').strip() while 1: allcards = [] lis1 = ['红心', '草花', '黑桃', '方片'] for i in lis1: for k in range(1, 14): if k == 1: allcards.append((i, 'A')) elif k == 11: allcards.append((i, 'J')) elif k == 12: allcards.append((i, 'Q')) elif k == 13: allcards.append((i, 'K')) else: allcards.append((i, k)) num = int(input('请输入序号选择:').strip()) s1 = Cards(n,allcards) dic = {1: s1.shuffle_card,2: s1.take_card,3: s1.draw,4: s1.sorting,5: s1.end} dicnum

进阶版 import random class Poker: rank = ['A'] + [str(i) for i in range(2,11)] + list('JQK') color = '黑桃 红心 方片 梅花'.split() def init(self,username): self.username = username self.cards = [(c,r) for c in self.color for r in self.rank]

def shuffle(self):

random.shuffle(self.cards)

return self.cards

def _random(self):

card = random.choice(self.cards)

return f'{self.username}您随机抽取的牌为: {card[0]}{card[1]}'

def appoint(self):

num = input('请输入选项:').strip()

card = self.cards[int(num)-1]

return f'{self.username}您抽取的第{num}张牌为: {card[0]}{card[1]}'

def sort(self):

self.sort_card = [(c,r)for r in self.rank for c in self.color]

return self.sort_card

def exit_out(self):

exit('成功退出程序')

def main(): choice_dict = { 1 : Poker.shuffle, 2 : Poker._random, 3 : Poker.appoint, 4 : Poker.sort, 5 : Poker.exit_out, } while 1: username = input('请输入用户名:').strip() obj = Poker(username) print( ''' 1.洗牌 2.随机抽取一张 3.指定抽取一张 4.从小到大排序 5.退出 ''' ) choice_num = input('请输入选项:').strip() print(choice_dictint(choice_num))

if name == 'main': main()

python扑克游戏_Python-----模拟扑克纸牌游戏相关推荐

  1. python设计抽奖游戏 球_Python模拟轮盘抽奖游戏

    题目如下: 模拟轮盘抽奖游戏 轮盘分为三部分: 一等奖, 二等奖和三等奖; 轮盘转的时候是随机的, 模拟本次活动1000人参加, 模拟游戏时需要准备各等级奖品的个数. #方法1: import ran ...

  2. python写飞机大战游戏_python实现飞机大战游戏

    飞机大战(Python)代码分为两个python文件,工具类和主类,需要安装pygame模块,能完美运行(网上好多不完整的,调试得心累.实现出来,成就感还是满满的),如图所示: 完整代码如下: 1.工 ...

  3. python做的大型游戏_Python有做大型游戏的潜力吗?

    由于最近我要考试忙不过来没修改回答,谢谢评论区大们的指正,我认识到的pygame库确实可以做游戏,但是pygame限制很多,特别是做大型游戏方面,3D还没有相关的优化方法等(3D游戏,pygame表示 ...

  4. 如何用python制作五子棋游戏_Python制作打地鼠小游戏

    原文链接 Python制作小游戏(二十一)​mp.weixin.qq.com 效果展示 打地鼠小游戏https://www.zhihu.com/video/1200492442610450432 简介 ...

  5. python玩扫雷_python实现扫雷小游戏

    前面我们用python实现了贪吃蛇.坦克大战.飞船大战.五子棋等游戏 今天我们用python来实现一下扫雷游戏 本游戏代码量和源文件较多 可以从我的GitHub地址中获取 构建地雷区import ra ...

  6. python编游戏_python编的著名游戏

    python编的著名游戏 2019-03-18 15:59:33 3323 0 没有找到相关结果 已邀请: 目前使用Python编写的游戏有文明4.星际迷航:舰桥指挥官.战地2等,小游戏有俄罗斯方 ...

  7. python做飞机大战游戏_python实现飞机大战游戏

    飞机大战(Python)代码分为两个python文件,工具类和主类,需要安装pygame模块,能完美运行(网上好多不完整的,调试得心累.实现出来,成就感还是满满的),如图所示: 完整代码如下: 1.工 ...

  8. python设计棋牌游戏_python开发棋牌类游戏

    pycharm专门针对用户打造的一种可以进行编辑的工具,它的功能设置比较强大,而且具有跨平台的使用特性,能方便用户通过跨平台的方式使用该软件,有效节省的使用时间,那么这款详情>> 阅读: ...

  9. 利用python制作拼图_python制作拼图小游戏

    开发工具 Python版本:3.6.4 相关模块: pygame模块: 以及一些Python自带的模块 环境搭建 安装Python并添加到环境变量,pip安装需要的相关模块即可. 原理介绍 游戏简介: ...

  10. pygame制作rpg类游戏或者模拟经营类游戏的思路

    Pygame 能够支持开发 RPG 类或者模拟经营类游戏.Pygame 提供了图形界面.事件处理.音频处理等基础功能,开发者可以利用这些功能实现自己的游戏逻辑. 例如,开发者可以利用 Pygame 实 ...

最新文章

  1. 对于数字特征的若干理解
  2. adguard没有核心 core no_业主装修最后悔的五个地方!没有之一
  3. SAP Spartacus本地启动时的白屏问题分析
  4. Inpainting图像修复halcon算子,持续更新
  5. Sonar与jenkins集成
  6. AAAI 2021 | 视频超分中的可变形对齐解读
  7. 计算机协会未来的发展,计算机协会
  8. MacBook Pro 如何删除多余专注模式?
  9. hello!!大家好
  10. 拓端tecdat|R语言隐马尔可夫模型HMM识别股市变化分析报告
  11. Ubuntu如何修改用户密码
  12. 时间基准控件外观的设置纠正
  13. 破解visio2013记录
  14. 三菱 MX COMPONENT下载及安装测试
  15. SQL 建表与查询
  16. 大脑网络结构、功能和控制的物理学
  17. python excel 空值_用Python轻松搞定Excel中的20个常用操作
  18. canvas教程11-渐变
  19. 学java被“劝退”的第六天
  20. Go 语言 入门 基于 GoLand 2023.1 创建第一个Go程序

热门文章

  1. 冯迅:YY多媒体实时传输系统演进
  2. java ftp 当前路径_java FTPClient中的相对路径和绝对路径
  3. 输入框掩码规则与提示技巧
  4. 读书无用论,是历史最大阴谋!
  5. PPPoE 的 基础配置及原理
  6. 计算机无法连接蓝牙键盘,如何解决无法找到win10计算机的蓝牙设备
  7. 电脑蓝牙连接时好时坏
  8. iOS 条形码不好扫的原因。
  9. 服务器信号怎么提高,手机信号差怎么办?这里有3招快速提高手机信号的妙招!...
  10. iOS应用开发视频教程笔记iPad Apps