题目:Python实现猜年龄

步骤一:实现最简单的猜年龄

# 事先定义
dark_knight_age = 28
user_age = input('Please guess my age:')
user_age = int(user_age) # 将用户输入的内容强转为整型
# 因为input接收的值都是字符串,
# 字符串不能与整型进行比较,所以要强转为整型 # 判断
if user_age == dark_knight_age: # 当用户输入的年龄与事先定义的年龄相等时。
print('You got it!')
elif user_age > dark_knight_age:# 当用户输入的年龄比事先定义的年龄要大时。
print('Try smaller')
else:
print('Try bigger') # 当用户输入的年龄比事先定义的年龄要小时。

步骤二:实现循环猜年龄

# 事先定义
dark_knight_age = 28
while True:
user_age = input('Please guess my age:')
user_age = int(user_age) # 将用户输入的内容强转为整型
# 因为input接收的值都是字符串,
# 字符串不能与整型进行比较,所以要强转为整型 # 判断
if user_age == dark_knight_age: # 当用户输入的年龄与事先定义的年龄相等时。
print('You got it!')
break
elif user_age > dark_knight_age:# 当用户输入的年龄比事先定义的年龄要大时。
print('Try smaller')
else:
print('Try bigger') # 当用户输入的年龄比事先定义的年龄要小时。

步骤三:解决程序中出现的BUG

1、去除用户输入的字符串左右两边的空格

2、解决用户输入的值为空

3、解决用户输入的值为其它字符串

# 事先定义
dark_knight_age = 28
while True:
user_age = input('Please guess my age:').strip() # 去除字符串两边的空格 # 当用户输入的内容为数字字符串时
if user_age.isdigit():
user_age = int(user_age) # 将用户输入的数字字符串转换为整型后再进行以下判断 # 判断
if user_age == dark_knight_age: # 当用户输入的年龄与事先定义的年龄相等时,退出循环。
print('You got it!')
break
elif user_age > dark_knight_age:# 当用户输入的年龄比事先定义的年龄要大时。
print('Try smaller')
else:
print('Try bigger') # 当用户输入的年龄比事先定义的年龄要小时。 # 当用户输入的内容为其它内容或None时,让其重新输入。
else:
print('Please try again!')

  

步骤四:扩展猜年龄

1、当用户猜年龄的猜错次数超过3次时退出程序。

2、每猜错一次便告之用户还有几次机会。

3、当用户输入为空时,不限次数让用户继续输入。

# 事先定义
count = 1
dark_knight_age = 28
while True:
if count == 4: # 用户在猜错情况下的次数超过了3次退出循环。
print('Too many times')
break user_age = input('Please guess my age:').strip() # 去除字符串两边的空格 # 当用户输入的值不为空时。
if user_age:
if user_age.isdigit(): # 当用户输入的内容为数字字符串时
user_age = int(user_age) # 将用户输入的数字字符串转换为整型后再进行以下判断 # 判断
if user_age == dark_knight_age: # 当用户输入的年龄与事先定义的年龄相等时,退出循环。
print('You got it!')
break
else:
if user_age > dark_knight_age:# 当用户输入的年龄比事先定义的年龄要大时。
print('Try smaller') elif user_age < dark_knight_age:
print('Try bigger') # 当用户输入的年龄比事先定义的年龄要小时。 print('You have %s chance' % (3 - count)) # 告诉还有几次机会。 # 当用户输入的内容为其它内容或None时,让其重新输入。
else:
print('Please try again!')
print('You have %s chance' % (3 - count)) # 告诉还有几次机会。 # 当用户输入的值为空时
else:
print('You enter blank, please re-enter!')
continue # 此时跳出本次循环,继续执行以下循环 count += 1 # 每次循环都次数都进行加1操作

  

  

Python猜年龄的更多相关文章

  1. python猜年龄游戏升级版

    猜年龄游戏升级版 要求:允许用户最多尝试3次,每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y,就继续让其猜3次,以此往复,如果回答N,就退出程序,如何猜对了,就直接退出 age = 1 ...

  2. 【Python】Python 猜年龄的游戏

    游戏规则: 允许用户最多尝试3次 每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序 如何猜对了,就直接退出 age= cou ...

  3. 我的python中级班学习之路(全程笔记第一模块) (第一章)(第2部分:如何设置python中的字体颜色,猜年龄练习题解答,while else语句,pycharm的使用)

    第一章:  python 基础语法 第  2  部分: 一.猜年龄练习题解答 直接上代码 >>> age = 26 >>> count = 0 >>&g ...

  4. python 小程序,猜年龄

    要求如下:

  5. python基础代码(猜年龄、从最内层跳出多层循环、简单的购物车程序)

    1.猜年龄 , 可以让用户最多猜三次! age = 55 i=0 while i<3: user_guess = int (input ("input your guess:" ...

  6. 用python写了一个猜年龄小游戏

    写一个猜年龄游戏: 需要实现用户登录的功能 初始用户登录信息为 {'hades': '13579','nick': '123','ruixing': 'a1','fanping': 'b2'} 登录时 ...

  7. python基础练习-猜年龄、编写登陆接口小程序

    python基础练习:   一.猜年龄 , 可以让用户最多猜三次! age=40 count = 1 while count <=3 : user_guess=int(input("i ...

  8. python基础实战之猜年龄游戏

    目录 一.Python基础实战之猜年龄游戏 给定年龄,用户可以猜三次年龄 年龄猜对,让用户选择两次奖励 用户选择两次奖励后可以退出 age = 18 # 答案 count = 0 # 游戏次数控制 p ...

  9. 初识python: while循环 猜年龄小游戏

    知识点: 1.python注释方法: 单行注释: # 多行注释: '''注释内容 '''  (单引号或双引号都可以),亦可打印多行 例: #此处是单行注释信息 print('这里是打印内容') #这里 ...

随机推荐

  1. 【转载】jxl的使用总结(java操作excel)

    jxl.jar是通过java操作excel表格的工具类库: 链接:https://pan.baidu.com/s/1AAT_eA_Q47zFeQohap6eQg 提取码:777b 1:通过模拟实现创建 ...

  2. 诊断:记一次存储异常CRASH致数据库无法正常打开的恢复

    数据库存储异常crash,首先控制文件出现问题 ORA-: ????? ???? ORA-: ???? : '/oracledata/oradata/orc11rac/orc11rac/system0 ...

  3. 【计算几何】二维凸包——Graham's Scan法

    凸包 点集Q的凸包(convex hull)是指一个最小凸多边形,满足Q中的点或者在多边形边上或者在其内.右图中由红色线段表示的多边形就是点集Q={p0,p1,...p12}的凸包. 一组平面上的点, ...

  4. 「 HDU P3555 」 Bomb

    # 题目大意 给出 $\text{T}$ 个数,求 $[1,n]$ 中含 ‘49’ 的数的个数. # 解题思路 求出不含 '49' 的数的个数,用总数减去就是答案. 数位 $DP$,用记忆化来做. 设 ...

  5. Gym - 101670F Shooting Gallery(CTU Open Contest 2017 区间dp)

    题目&题意:(有点难读...) 给出一个数字序列,找出一个区间,当删除这个区间中的两个相同的数字后,只保留这两个数字之间的序列,然后继续删除相同的数字,问最多可以实行多少次删除操作. 例如: ...

  6. try catch影响Spring事务吗?

    对于这个问题有两种情况: 1.catch只打印异常,不抛出异常 try { 数据库做添加订单表; /; 数据库减少库存; }catch (Exception e){ e.printStackTrace ...

  7. MySql-了解存储引擎

    怎么应对不同版本 在不同的 mysql 版本中,很多特性和语法有可能是不一样的,我们怎么样才能知道当前版本的语法是什么样呢?最好的办法是学会使用 mysql 的帮助. A.按照层次看帮助 例如:mys ...

  8. FileReader实现读取文件内容并输出到屏幕上

    FileReader与FileInputStream都是从文件读数据,而前者一次读一个字符,后者一次读一个字节(在Unicode编码环境下1个字符=2个字节) package com.janson.d ...

  9. python3.3+selenium

    1.查看C:\Python33\Scripts下已经有了easy_install.exe; 2.从这里下载pip tar.gz,并解压到C盘,https://pypi.python.org/pypi/ ...

  10. java中String,int,Integer,char、double类型转换

    java中String,int,Integer,char.double类型转换----https://www.cnblogs.com/kangyu222/p/5866025.html