这篇文章主要分析的是3个适合新手练习的python小游戏,初学者嘛就应该多练手,下文分享的python小游戏欢迎大家来玩,需要的小伙伴也可以参考一下目录1.猜拳2.数字炸弹3.赌大小学Python之前我们先来几个简单的小游戏练练手,这三个小游戏一个比一个复杂,建议新手慢慢来:
1.猜拳
import random #导入随机模块num = 1yin_num = 0shu_num = 0while num <= 3:if shu_num == 2 or yin_num == 2:breakuser = int(input('请出拳 0(石头) 1(剪刀) 2(布)'))if user > 2:print('不能出大于2的值')else:data = ['石头', '剪刀', '布']com = random.randint(0, 2)print("您出的是{},电脑出的是{}".format(data[user], data[com]))if user == com:print('平局')continueelif (user == 0 and com == 1) or (user == 1 and com == 2) or (user == 2 and com == 0):print('你赢了')yin_num += 1else:print('你输了')shu_num += 1num += 1
2.数字炸弹
import randomimport timebomb = random.randint(1, 99)print(bomb)start = 0end = 99while 1 == 1:people = int(input('请输入{}到{}之间的数:'.format(start, end)))if people > bomb:print('大了')end = peopleelif people < bomb:print('小了')start = peopleelse:print('BOOM!!!')breakprint('等待电脑了输入{}到{}之间的数:'.format(start, end))time.sleep(1)com = random.randint(start + 1, end - 1)print('电脑输入:{}'.format(com))if com > bomb:print('大了')end = comelif com < bomb:print('小了')start = comelse:print('BOOM!!!')break
3.赌大小
import timeimport random# 让用户注册name = input('请填写用户名:')age = input("{}您好,请输入您的年龄 : ".format(name))user_info = {'name': name, 'age': int(age)} # 用户信息user_properties = ['X 1-5'] # 用于存放用户道具 默认道具properties = ['X3 (250G)', 'X1-5 (300G)'] # 道具列表 显示用# 根据用户年龄 给与不同的初始金币if 10 < user_info['age'] < 18:glod = 1000elif 18 <= user_info['age'] <= 30:glod = 1500else:glod = 500user_info['glod'] = glod# 输出相关提示信息print("{}您好,欢迎游玩本游戏,您的初始金币为:{}".format(user_info['name'], user_info['glod']))print("\n")time.sleep(1)print('游戏说明'.center(50, '*'))print('*'.ljust(53), '*')print('*', end='')print("电脑每次投掷三枚骰子,总点数>=10为大,否则为小".center(32), end='')print('*')print('*'.ljust(53), '*')print('*' * 54)print("\n")# 开始游戏result = input('是否开始游戏 yes or no : ')go = Trueif (result.lower() == 'yes'):while go:dices = []# 开始投掷for i in range(0, 3):dices.append(random.randint(1, 6))total = sum(dices) # 计算总和user_input = input('请输入big OR small : ') # 等待用户输入u_input = user_input.strip().lower()time.sleep(1)# 判断用户输入print('骰子点数为:{}'.format(dices), end=' ')if (total >= 10 and u_input == 'big') or (total < 10 and u_input == 'small'):print('您赢了!!!')multi = 1 # 倍数if len(user_properties) > 0: # 如果用户有道具 选择是否使用道具use_pro = input('是否使用道具: ')if use_pro.lower() == 'yes':use_pro = int(input('请选择使用第几个道具{} :'.format(user_properties)))use_pro -= 1# 判断道具类型if user_properties[use_pro] == 'X 3':multi = 3print('奖金翻3倍')elif user_properties[use_pro] == 'X 1-5':multi = random.randint(1, 5)print('奖金翻{}倍'.format(multi))user_properties.remove(user_properties[use_pro]) # 删除道具user_info['glod'] += 100 * multi; # 金额增加else:print('您输了!')user_info['glod'] -= 100; # 错误 用户金币减 100# 判断用户金币 是否够下次玩 不够则退出程序if (user_info['glod'] <= 0):print('您的金币已经用完,感谢您的游玩')breakif user_info['glod'] % 1000 == 0: # 用户金币 是1000的倍数是 可购买道具shop = input('您现在有金币:{},是否购买道具 yes or no: '.format(user_info['glod']))if shop.lower() == 'yes':good_num = int(input('请选择要购买第几个道具 {}'.format(properties)))if good_num == 1:user_properties.append('X 3') # 给用户添加道具user_info['glod'] -= 250print('购买成功!消耗金币250')elif good_num == 2:user_properties.append('X 1-5') # 给用户添加道具user_info['glod'] -= 300 # 用户金币减 300print('购买成功!消耗金币300')else:print('没有该道具,您失去了这次机会')else:# 一直提示 太烦# conti = input('您现在有金币:{},是否继续游玩,yes or no: '.format(user_info['glod']))print('您现在有金币:{} '.format(user_info['glod']))else:print('欢迎下次游玩,再见!')
到此这篇关于3个适合新手练习的python小游戏的文章就介绍到这了
相关推荐
© 2020 asciim码
人生就是一场修行