[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 ...
随机推荐
- hdu4731 Minimum palindrome (找规律)
这道题找下规律,3个字母或者以上的时候就用abcabcabc....循环即可. 一个字母时,就是aaaaa.....; 当只有2个字母时!s[1][]=a"; s[2][]="ab ...
- openGL坐标系
从我们构造模型的局部坐标系(Local/Object Space)经过一系列的处理最终渲染到屏幕坐标系(Screen Space)下,这个过程有6种坐标系. 一.世界坐标系(World Coordin ...
- 【leetcode】1147. Longest Chunked Palindrome Decomposition
题目如下: Return the largest possible k such that there exists a_1, a_2, ..., a_k such that: Each a_i is ...
- angularJS拖动marker时popup一直显示
$scope.$on('leafletDirectiveMarker.drag', function(event, arg) { arg.leafletObject.openPopup(); });
- Quantitative Startegies for Achieving Alpha(二)
Chapter 3 The Day-To-Day Drivers Of Stock Market Returns Summary: (1) Earning growth is the primary ...
- codevs 2039 骑马修栅栏 USACO x
题目描述 Description Farmer John每年有很多栅栏要修理.他总是骑着马穿过每一个栅栏并修复它破损的地方. John是一个与其他农民一样懒的人.他讨厌骑马,因此从来不两次经过一个栅栏 ...
- Apache编译教程
手工编译安装Apache, 版本httpd-2.4.29(免费提供安装包,懒人福利:提供安装脚本):https://blog.51cto.com/13728740/2158576 编译安装apache ...
- C++语法一二
写在前面(C++和java的一些区别): (1) C++中数组的定义为 int a[8];而在java中一般定义为int[] a=new int[8];如果定义的时候进行初始话,也可以缺省数 ...
- spring-boot-devtools热加载不起作用
在开发过程中,希望修改时能够及时更新修改,即热加载,但是spring-boot-devtools不起作用.这主要是两个原因导致. 一.spring-boot-maven-plugin插件没有配置,如下 ...
- HTML&&CSS基础知识点整理
HTML&&CSS基础知识点整理 一.WEB标准:一系列标准的集合 1. 结构(Structure):html 语言:XHTML[可扩展超文本标识语言]和XML[可扩展标记语言] 2. ...