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('游戏结束!')

最新文章

  1. Express 教程 01 - 入门教程之经典的Hello World
  2. (转)浅谈Java中的equals和==
  3. mysql sum 和 count 函数 合并使用
  4. log4j PatternLayout 输出解析
  5. Python更换国内源实现快速PIP安装
  6. Ubuntu(Linux)使用Eclipse搭建C/C++编译环境
  7. SqlServer nvarchar中的中文字符匹配,更改SqlServer实例和数据库排序规则的办法
  8. The Ninth Hunan Collegiate Programming Contest (2013) Problem G
  9. SPOJ 1487 Query on a tree III(划分树)
  10. How to add EDT relation table[AX2012]
  11. linux make clean
  12. Oracle SQL函数之转换函数
  13. CSS权威指南学习笔记 —— 初步认识CSS
  14. 高仿bootstrap样式的分页插件
  15. [Pelican]Pelican入门(二)
  16. css3兼容360
  17. wqweqweqwe
  18. Springboot中的事件Event
  19. SSM登录跳转到登录页,登录页不能加载js和样式
  20. [笔记] SQL性能优化 - 避免使用 IN 和 NOT IN

热门文章

  1. Contest 991
  2. 决胜IT十八招-前言
  3. 团队 Gitee 实战训练
  4. PriorityQueue 优先队列的实现
  5. 数据库:Flask-SQLAlchemy
  6. 第8.27节 Python中__getattribute__与property的fget、@property装饰器getter关系深入解析
  7. Asp.NetCore之AutoMapper进阶篇
  8. apache、nginx、Tomcat、IIS引擎解析漏洞
  9. 再也不怕 JavaScript 报错了,怎么看怎么处理都在这
  10. 百度前端技术学院-基础-day25-27