Python:CPU和人的21点对决
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,# coding:utf-8# __author__: 神仙也考试# __author time__: 2017/8/8import randomprint """需求: 1、初始CPU和人各随
千家信息网最后更新 2026年11月02日Python:CPU和人的21点对决
# coding:utf-8# __author__: 神仙也考试# __author time__: 2017/8/8import randomprint """需求: 1、初始CPU和人各随机拥有2张牌; 2、各计算得出初始2张牌的总数; 3、当拥有的牌数小于16点则自动新增一张牌; 4、新增的牌进入计算总和; 5、人的计算中:当大于等16点时候进行选择是否加牌;当加的牌大于等于22点,则自动停止; 6、CPU的计算中:当小于16点则自动新增牌并计算;当大于16点则自动停止; 7、最后得出的值进行比较 8、比较规则: 【1】都大于等于22点,则和局; 【2】都小于22点时,若两个数相等,则和局; 【3】点数大者为赢,点数小者为输。"""print "*************** 开始游戏 ***************"# 初始化4个随机1-10的整数number1 = random.randint(1, 10)number2 = random.randint(1, 10)number3 = random.randint(1, 10)number4 = random.randint(1, 10)# 初始化CPU和人的随机列表man_numbers = [number1, number2]cpu_numbers = [number3, number4]# 初始化CPU和人的总数man_count = 0cpu_count = 0# 初始化循环标识flag_cpu = 1flag_man = 1# **************************************# ############# 定义人行为 ############## **************************************# 计算初始人得到的总数for i in man_numbers: man_count = man_count + iprint "你拥有的牌是 %s " % man_numbersprint "你的牌数总计点数是 %s" % man_countif man_count < 16: # 小于16则继续自动添加牌到16点以上 print "拥有的牌数小于16点,自动添加新牌到16点以上..." while flag_man == 1: man_random1 = random.randint(1, 10) # 获得随机值,保证每次取到的都是一个新的随机值 man_numbers.append(man_random1) # 把获得的随机值添加到列表中 man_count = man_count + man_numbers[-1] # 始终加上列表的最后一个值 if man_count >= 16 and man_count <22: while flag_man == 1: print "你拥有的牌数点数大于16点,总数为 %s,是否需要继续添加新牌?" % man_count print "任意键表示继续要牌,输入大写Q或小写q,表示退出!" get_key = raw_input("请输入:\n") if get_key == 'Q' or get_key == 'q': flag_man = 0 else: man_random2 = random.randint(1, 10) # 获得随机值,保证每次取到的都是一个新的随机值 man_numbers.append(man_random2) # 把获得的随机值添加到列表中 man_count = man_count + man_numbers[-1] # 始终加上列表的最后一个值 if man_count >= 22: flag_man = 0 if man_count >= 22: flag_man = 0 print """******************************""" print "当前你的牌数总数是 %s" % man_count print "当前你拥有的牌是 %s" % man_numberselse: while flag_man == 1: print "你拥有的牌数点数大于16点,总数为 %s,是否需要继续添加新牌?" % man_count print "任意键表示继续要牌,输入大写Q或小写q,表示退出!" get_key = raw_input("请输入:\n") if get_key == 'Q' or get_key == 'q': flag_man = 0 else: man_random3 = random.randint(1, 10) # 获得随机值,保证每次取到的都是一个新的随机值 man_numbers.append(man_random3) # 把获得的随机值添加到列表中 man_count = man_count + man_numbers[-1] # 始终加上列表的最后一个值 if man_count >= 22: flag_man = 0 print """******************************""" print "当前你的牌数总数是 %s" % man_count print "当前你拥有的牌是 %s" % man_numbers# **************************************# ############# 定义CPU行为 ############# **************************************# 计算初始CPU得到的总数for j in cpu_numbers: cpu_count = cpu_count + jif cpu_count < 16: while flag_cpu == 1: # CPU获取随机值 cpu_random1 = random.randint(1, 10) cpu_numbers.append(cpu_random1) cpu_count = cpu_count + cpu_numbers[-1] if cpu_count >= 16: flag_cpu = 0 print """******************************""" print "CPU的总和是 %s" % cpu_count print "当前CPU拥有的牌是 %s" % cpu_numberselse: print """******************************""" print "CPU的总和是 %s" % cpu_count print "当前CPU拥有的牌是 %s" % cpu_numbers# **************************************# ######### 比较CPU和人的值 ############ **************************************print """******************************"""if man_count >= 22 and cpu_count < 22: print "CPU赢了..." print "你的总数大于22,你输了..."elif man_count < 22 and cpu_count >= 22: print "你赢了..." print "CPU的总数大于22,CPU输了..."elif man_count <= 21 and cpu_count <= 21: if man_count > cpu_count: print "你赢了..." print "你的总数为:%s" % man_count print "CPU输了..." print "CPU的总数为:%s" % cpu_count elif man_count < cpu_count: print "CPU赢了..." print "CPU的总数为:%s" % cpu_count print "你输了..." print "你的总数为:%s" % man_count else: print "和局..." print "你和CPU的总数都为:%s" % man_countelse: print "和局..." print "你和CPU的总数都大于22..."print "*************** 游戏结束 ***************"
总数
和局
总和
点数
行为
输入
两个
大写
小写
小者
整数
时候
标识
神仙
规则
需求
保证
循环
考试
选择
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
咖啡豆
喔噻互联网科技有限公司
山东特亿宝互联网科技有限公司
湖南永感互联网科技有限公司
互联网科技深圳
互联网核心科技是什么
美国互联网科技巨头监管
朗新科技与工业互联网
深圳期待互联网科技
撒么互联网科技公司
滨湖区互联网智能科技产品供应
湖南洣水互联网科技有限公司扣款
崇明区互联网教育科技诚信经营
互联网科技公司有风险吗
洛阳昕诺飞互联网科技有限公司
科技赋能视角下互联网保险发展
中科明德北京互联网科技
工业互联网展湾科技股份有限公司
中国新注册互联网科技
第三届互联网大会安防黑科技
科技互联网
小米移动互联网科技园
互联网科技活动banner
科技与互联网
互联网扶贫科技
互联网下的科技发展
易互联网科技有限公司
剑昆互联网络科技有限公司临桂
杭州披云加互联网科技有限公司
广州百诚互联网科技有限公司官网