Python实例解析:猜数字游戏
来自CloudWiki
实例解析:猜数字游戏
编写一个猜数字游戏的程序,在1到1000之间随机产生一个数,然后请用户循环猜这个数字,对于每个答案只回答猜大了或猜小了,直到猜准确为止,输出用户的猜测次数。
当然运气好一次就能猜,对运气不好,要才999次,这就是猜测次数的边界了,来试一试,用户究竟几次能猜对呢。
分析
根据程序需求,需要考虑不断的让用户循环输入猜测值,并根据猜测值和目标值之间的比较决定程序逻辑。
- 怎样产生随机数?模块2:random库的使用
提示:为了产生随机数,需要使用Python语言的随机数标准库random:
import random target = random.randint(1,1000)
- 用什么语句能让用户循环猜某个数字 ?
- 用什么语句能判断猜大还是猜小?
- 怎样实现猜准确为止(即用什么语句可退出)?
- 用户的猜测次数怎样记录?
初始版
import random target = random.randint(1,1000) count = 0 while True: guess =eval(input('请输入一个猜测的整数(1至1000):')) count = count +1 if guess > target: print('猜大了') elif guess < target: print('猜小了') else: print('猜对了') break print('此轮的猜测次数是:',count)
异常处理版
import random target = random.randint(1,1000) count = 0 while True: try: guess =eval(input('请输入一个猜测的整数(1至1000):')) except: print('输入有误,请重试,不计入猜测次数哦!') continue count = count +1 if guess > target: print('猜大了') elif guess < target: print('猜小了') else: print('猜对了') break print('此轮的猜测次数是:',count)
练习2
输入一个年份,输出是否是闰年(什么是闰年,大家可以自行百度)
while True: try: year = eval(input("请输入您的年份:")) except: print("请输入正确的数字") continue if (year%4==0 and year %100 !=0) or year %400 ==0: print("该年时闰年") else: print("不是闰年")
练习3
统计不同字符个数,用户从键盘输入一行字符,编写一个程序,统计并输出其中英文字符、数字、空格和其他字符的个数。