python猜年龄小程序_用python代码编写的猜年龄小游戏

news/2024/7/8 1:51:22

#0. 奖励物品存放在文件price.txt

#1. 给定年龄(随机18-60),用户可以猜三次年龄

#2. 年龄猜对,让用户选择两次奖励

#3. 用户选择两次奖励后可以退出

import random

age = random.randint(18, 60) # 随机一个数字,18-60岁

print(age)

count = 0 # 计数

f = open('price.txt', 'r', encoding='utf8') # price.txt右下角为什么编码,则encoding为什么编码

price_dict = f.read()

price_dict = eval(price_dict) # type:dict # 获取奖品字典

f.close()

price_self = dict()

while count < 3:

count += 1

inp_age = input('请输入你想要猜的年龄:')

# 判断是否为纯数字

if not inp_age.isdigit():

print('搞事就骂你傻逼')

continue

inp_age = int(inp_age)

# 筛选年龄范围

if inp_age > 60 or inp_age < 18:

print('好好题目,18-60岁,非诚勿扰')

continue

# 核心逻辑

if age == inp_age:

print('猜中了,请选择你的奖品')

# 打印商品

for k, v in price_dict.items():

print(f'奖品编号:{k} {v}')

# 获取奖品的两次循环

for i in range(2):

price_choice = input('请输入你需要的奖品编号:')

if not price_choice.isdigit():

print("恭喜你已经获得一次奖品,奖品为空!并且请输入正确的奖品编号!")

continue

price_choice = int(price_choice)

if price_choice not in price_dict:

print('你想多了吧!')

else:

price_get = price_dict[price_choice]

print(f'恭喜中奖:{price_get}')

if price_self.get(price_get):

price_self[price_get] += 1

else:

price_self[price_get] = 1

print(f'恭喜你获得以下奖品:{price_self}')

break

elif age > inp_age:

print('猜小了')

elif age < inp_age:

print('猜大了')

continue


http://www.niftyadmin.cn/n/2679647.html

相关文章

2018.12.08【NOIP提高组】模拟B组 JZOJ 100042 保留道路

描述 很久很久以前有一个国家&#xff0c;这个国家有N个城市&#xff0c;城市由1,2,3,…,NNN标号&#xff0c;城市间有M条双向道路&#xff0c;每条道路都有两个属性ggg和sss&#xff0c;两个城市间可能有多条道路&#xff0c;并且可能存在将某一城市与其自身连接起来的道路。…

《那些年啊,那些事——一个程序员的奋斗史》——82

段伏枥一直为之头疼的电源管理终于解决了&#xff0c;不过不是自己&#xff0c;而是曹燕。曹燕用的还是普通便宜的电源芯片&#xff0c;但是通过分压&#xff0c;引出一条支路到CPU的某个ADC脚。然后通过检测这个引脚的数值&#xff0c;再通过一定的公式换算&#xff0c;就能得…

在VC++中嵌入MapX的集成二次开发

结合GIS工具软件与当今可视化开发语言的集成二次开发方式是GIS应用开发的主流。它的优点是既可以充分利用GIS工具软件对空间数据库的管理、分析功能&#xff0c;又可以利用其它可视化开发语言具有的高效、方便等编程优点&#xff0c;集二者之所长……MapX是MapInfo公司向用户提…

熟悉HTML CSS布局模型

HTML最难的地方来了!这个我反复了很多遍, 包括现在写博客, 也对我自己算是一种温习, 我这块怕是没办法写的很好懂, 因为我自己还不能把我学到的准确通俗易懂的表达出来, 给自己记个笔记, 以后再来一点一点的改, 新手可以看看, 对于初学这块的人应该还是有点帮助的. CSS布局模型…

2018.12.08【NOIP提高组】模拟B组 JZOJ 3518 进化序列

描述 有A1,A2...An−1,AnA_1,A_2...A_{n-1},A_nA1​,A2​...An−1​,An​ 这nnn个基因 一个基因AxA_xAx​可以进化为序列中在它之后的基因Ay(x≤y)A_y(x\leq y)Ay​(x≤y) 这个进化的复杂度&#xff0c;等于AxorAx1orAx2or...Ay−1orAyA_x\ or\ A_{x1}\ or A_{x2}\ or ...A_{…

python装饰器怎么编程_Python 装饰器

装饰器本质上是一个Python函数&#xff0c;它可以让其他函数在不需要做任何代码变动的前提下增加额外功能&#xff0c;装饰器的返回值也是一个函数对象.经常用于有切面需求的场景&#xff0c;比如&#xff1a;插入日志、性能测试、事务处理、缓存、权限校验等场景。装饰器是解决…

Openscales 入门

Openscales 入门 (Flex开源gis首选) 简单介绍 OpenScales是一个优秀的前台地图框架&#xff0c;开发者可以用来开发各种网络版、手机版和桌面版的地图程序。 她是基于ActionSctip 3 和 Flex写的&#xff0c;能够支持各种标准的地图服务&#xff0c;比如WMS、WFS、TMS、OSM等。…

Sonar 与 Maven 配置

2019独角兽企业重金招聘Python工程师标准>>> ### Sonar 与 Maven 配置 ###1.下载sonar 包&#xff0c;解压 [下载地址](http://www.sonarqube.org/downloads)2.修改sonar 配置文件&#xff0c;设置数据库链接 修改 sonar.properties 文件 1.数据库账号、…