[Python3 练习] 007 简单的猜数字小游戏
题目:简单的猜数字小游戏
(1) 描述
- 程序随机生成一个数字,玩家用键盘输入所猜数字,在规定次数内猜对为胜。
(2) 要求
- 程序随机生成一个 1 到 100 的自然数
- 有 7 次机会去猜
- 机会用尽之前
- 若第一次就猜对,则输出“你真厉害,一次就猜对了!”,然后退出程序
- 若非第一次猜对,则输出“恭喜你,猜对了!”,然后退出程序
- 若猜错,则给出提示
- 说明所猜数字与答案相比是“大了”还是“小了”
- 显示剩余次数
- 若第 7 次仍没猜对,则先输出答案,再输出“不好意思,游戏结束了,下回加油!”
(3) 程序
1) 代码
# 猜数字小游戏
import random # 导入 random 库
flag = 0 # 7 次都没猜对时的标记,用于打印结束语
lucky_num = random.randint(1,100) # 随机生成一个 1 到 100 的自然数
guess_num = eval(input("请输入你猜测的数字(一个 1 到 100 的自然数):"))
if guess_num == lucky_num:
print("你真厉害,第一次就猜对了!")
else:
for i in range(7): # 最坏的情况是 7 次全猜错,此时需要和答案比较 7 次
if guess_num > lucky_num:
print("\n你猜的数字大了,", end = '')
elif guess_num < lucky_num:
print("\n你猜的数字小了,", end = '')
else:
print("\n恭喜你,猜对了!")
flag = 1
break
if i < 6: # 之前猜过 1 次,这里最多只能猜 6 次
print("还有", str(6-i), "次机会。\n")
print('-' * 30)
guess_num = eval(input("\n请再猜一次:"))
if flag == 0: # 7 次都没猜对才打印
print("答案是:", lucky_num)
print("\n不好意思,游戏结束了,下回加油!")
2) 运行情况
截图1

截图2

[Python3 练习] 007 简单的猜数字小游戏的更多相关文章
- 简单的猜数字小游戏--Python
猜数字小游戏: #coding=utf-8 import random answer =random.randint(1,100) #生成随机数 n=int (input("Please ...
- 简单的C语言猜数字小游戏
猜数字小游戏可谓是C语言最为基础的一个知识点了,我们可以在此基础上进行延伸,实现随机数的猜测,然后是加入再来一局的模式,等等.这里是抛砖引玉,希望你能做出你的经典之作. #include <st ...
- Java基础知识强化之IO流笔记70:Properties练习之 如何让猜数字小游戏只能玩5次的案例
1. 使用Properties完成猜数字小游戏只能玩5次的案例: 2. 代码实现: (1)猜数字游戏GuessNumber: package cn.itcast_08; import java.uti ...
- java猜数字小游戏
/* * * 猜数字小游戏 * * 先由系统生成一个2-100之间的随机数字, * * 然后捕获用户从控制台中输入的数字是否与系统生成的随机数字相同, * * 如果相同则统计用户所猜的次数,并给出相应 ...
- python新手如何编写一个猜数字小游戏
此文章只针对新手,希望大家勿喷,感谢!话不多说先上代码: import random if __name__ == '__main__': yourname = input("你好! 你的名 ...
- 零基础自学Python十天,写了一款猜数字小游戏,附源码和软件下载链接!
自学一门语言最重要的是要及时给自己反馈,那么经常写一些小程序培养语感很重要,写完可以总结一下程序中运用到了哪些零散的知识点. 本程序中运用到的知识点有: 1.输入输出函数 (input.print) ...
- Java(控制台输出)实现猜数字小游戏
import java.util.Scanner; import java.util.Random; public class GuestNum{ public static void main(St ...
- Python基础入门-实现猜数字小游戏
今天呢,我们来通过前面学过的一些知识点来完成一个猜数字大小的游戏程序设计.那么呢,一般人写代码直接上来就干,没有分析,这样的做法是没有产出的,除非你是大牛,今天呢,我会把我学习编程的思路分享给大家,我 ...
- java代码 猜数字小游戏
import java.util.Scanner; import java.util.Random; public class mulTip{ public static void main(Stri ...
随机推荐
- tf Dataset API
https://zhuanlan.zhihu.com/p/30751039 https://zhuanlan.zhihu.com/p/37106443 关于其中shuffle时的buffer_size ...
- 使用QT创建系统托盘
使用QT来创建一个系统托盘,事实上是一件很简单的事.为什么这么说?一是因为QT文档给出了比较详细的例子,二是QT的结构比较优雅,设计风格统一.但是在动手之前,我们要从哪里下手?虽然QT文档给出了一个比 ...
- python-语言播报
利用系统自带模块: 在cmd中 python -m pip install pypiwin32 安装win32com模块 import win32com.client sp=win32co ...
- poj 3352 : Road Construction 【ebcc】
题目链接 题意:给出一个连通图,求最少加入多少条边可使图变成一个 边-双连通分量 模板题,熟悉一下边连通分量的定义.最后ans=(leaf+1)/2.leaf为原图中size为1的边-双连通分量 #i ...
- springboot日期转换器
注:该功能并非springboot特有的功能,springmvc同样具有 一.使用方法 创建一个DateConverter类实现Converter接口 注:importorg. ...
- React Native 之FlatList 下拉刷新和上拉加载更多
接上一篇代码: 只修改了FlatListDemo.js里面的代码 import React, {Fragment,Component} from 'react'; import { SafeAreaV ...
- qs的两个用途
qs是npm安装的库 1.qs.stringify() 将对象序列化成URL的形式,以&进行拼接 const Qs = require('qs'); let obj= { method: ...
- Headless Windows
Google Chrome 79.0.3945.79 (正式版本) (64 位) (cohort: 79_Win_79) .\chrome --headless --user-data-dir=tmp ...
- A - Biorhythms (第三周)
A - Biorhythms 链接:https://vjudge.net/contest/154063#problem Description 人生来就有三个生理周期,分别为体力.感情和智力周期,它们 ...
- matlab 中 ordfilt2() 函数
简介: ordfilt2 是一个二维数据过滤器,首先对根据滤窗口中的非零元素对目标矩阵中的元素进行排序,然后用其中第K(通过参数指定)大的元素代替原数据值,并以此过程遍历目标矩阵中的每一个元素. 一. ...