学习了python基础知识已经七天了,囊括 了很多知识点,今日老师带着我们理了一遍高级游戏的程序逻辑,把我们这几天学习的东西用上了,接下要真正得成为一名码农了,好好纪念一下
首先说一下该游戏的功能,大咖如果觉得有更好的代码精简,可以探讨一下
编写猜年龄游戏,有以下要求:
- 可能会有用户会在输入年龄之后不小心输入空格,如18 ,请做处理
- 可能会有用户会恶意输入导致程序报错,如
逗你玩呀
,请做处理 - 如果用户3次没有猜对,可以选择继续玩或退出(自定义退出条件)
- 如果用户猜对了,可以在以下奖品中选择两件奖品(一次只能选择一件奖品):
{0:'布娃娃',1:'变形金刚',2:'奥特曼',3:'<python从入门到放弃>'}
- 用户选择奖品后退出程序,用户也可以不选择奖品直接退出程序。
age = 18 # 答案
count = 0 # 游戏次数控制
prize_dict = {
0:'布娃娃',
1:'变形金刚',
2:'奥特曼',
3:'<Python从入门到放弃>'
}
# 核心代码
while count < 3:
inp_age = input('请输入你的年龄>>>').strip() # 与用户交互
# 判断用户是否骚扰
if not inp_age.isdigit():
print('傻逼,你的年龄输错了')
continue
inp_age_int = int(inp_age)
# 核心逻辑,判断年龄
if inp_age_int == age:
print('猜对了')
print(prize_dict) # 打印奖品
# 获取两次奖品
for i in range(2):
prize_choice = input('请输入你想要的奖品,如果不想要,则输入"n"退出!!!').strip() # 与用户交互获取奖品
# 判断是否需要奖品
if prize_choice != 'n':
print(f'恭喜你获得奖品: {prize_dict[int(prize_choice)]}')
else:
break
break
elif inp_age_int < age:
print('猜小了')
else:
print('猜大了')
count += 1 # 成功玩一次游戏
if count != 3:
continue
again_choice = input('是否继续游戏,继续请输入"Y",否则任意键直接退出.').strip() # 交互是否再一次
# 判断是否继续
if again_choice == 'Y':
count = 0
内容来源于网络如有侵权请私信删除
- 还没有人评论,欢迎说说您的想法!