Python代码实现猜数字游戏

 1 # -*- coding:utf-8 -*-
 2 # 作者:IT小学生蔡坨坨
 3 # 时间:2020/12/9 23:02
 4 
 5 # 猜数字游戏:
 6 # 代码中生成一个随机整数.
 7 # 然后用户输入数字后,
 8 # 程序提示用户的输入是高了还是低了,
 9 # 直到用户猜中这个数字, 游戏结束.
10 # 提示, random模块的randint函数能够帮助我们生成随机整数。
11 
12 from random import randint
13 
14 correct_num = randint(1, 20)  # 随机生成一个大于等于1,小于等于20的整数
15 is_quit = 'n'  # 设置变量is_quit,用于判断是否退出游戏
16 print('请输入一个1-20的整数(输入q/Q/666可直接退出游戏):')
17 while is_quit != 'y':
18     try:
19         guess_num = input()  # 用于获取用户输入的值
20 
21         if guess_num.upper() == 'Q':  # upper(),用户若输入q,则自动转换成Q
22             guess_num = 666  # 设置一个随机字符串,作为退出循环的条件
23         guess_num = int(guess_num)  # 若用户输入的值为整数,则转换为int类型
24 
25         if guess_num == correct_num:
26             print('恭喜你,猜对了,你真棒呀呀呀!')
27             is_quit = input('您要退出游戏吗? y/n :')
28             while is_quit != 'y' and is_quit != 'n':
29                 is_quit = input('只能输入 y/n ,请重新输入:')
30             if is_quit == 'n':
31                 correct_num = randint(1, 20)
32                 print('请输入一个1-20的整数(输入q/Q/666可直接退出游戏):')
33         elif 1 <= guess_num < correct_num:
34             print('猜小了,哈哈哈,请重新输入:')
35         elif correct_num < guess_num <= 20:
36             print('猜大了,哈哈哈,请重新输入:')
37         elif guess_num == 666:
38             is_quit = 'y'  # 用于退出循环,结束游戏
39         else:
40             # 若输入整数不在1-20范围内,则提示用户重新输入
41             print('您输入的整数不在1-20范围内,请重新输入:')
42     except ValueError:  # 若输入非整数类型,捕获异常
43         print('您输入的不是一个整数,请重新输入:')
44 
45 print('游戏结束!')

                                                                                                       

posted @ 2020-12-19 17:58  测试蔡坨坨  阅读(3337)  评论(0编辑  收藏  举报