题目: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. 03Oracle Database 物理结构,逻辑结构

    Oracle Database 物理结构,逻辑结构 Oracle Database 物理结构 数据文件 Oracle数据库有一个或多个物理的数据文件.数据库的数据文件包含全部数据库数据.逻辑数据物理地 ...

  2. Manjaro安装配置美化字体模糊发虚解决记录

    Manjaro安装记录 前言: ​ 记录自己Manjaro18安装的一些坑,避免下次满互联网找解决方法.在此之前试过Manjaro.Ubuntu.Fedora.linux Mint系统的pac.yum ...

  3. Linux学习笔记记录(五)

  4. tomcat7解决jsp参数传递的中文乱码问题

    解决jsp参数传递的中文乱码问题 制作人:全心全意 在jsp页面中,通过参数传递传递中文时,在显示参数值时中文内容变成了乱码.这是因为请求参数的文字编码方式与页面中的不一致造成的,所有的request ...

  5. React组件设计技巧

    React组件设计 组件分类 展示组件和容器组件 展示组件 容器组件 关注事物的展示 关注事物如何工作 可能包含展示和容器组件,并且一般会有DOM标签和css样式 可能包含展示和容器组件,并且不会有D ...

  6. Django-REST-Framework JWT 实现SSO认证(下)

    在上一篇博客中,我已经对JSON Web 认证做了简单的解释,这篇博客是续篇,若不了解,请看上一篇博客:https://www.cnblogs.com/yushenglin/p/10863184.ht ...

  7. graph.h

    #ifndef _GRAPH_#define _GRAPH_#include<stdio.h>#include<stdlib.h>#include<string.h> ...

  8. intel compiler的表现

    好久没弄这个东西,今天突然想试下,代码没写完,以后补. #include <stdio.h> #include <stdlib.h> #include <time.h&g ...

  9. Vue2.0如何实现父组件与子组件之间的事件发射与接收

    关于vue2.0的事件发射和接收,大家都知道$dispatch和$broadcast在vue2.0已经被弃用了,取而代之的是更加方便快捷的方式,使用事件中心,组件通过它来互相通信,不管组件在哪一个层都 ...

  10. HDU 5493 Queue

    Queue Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...