python猜数字(多种实现方法)

设定一个理想数字比如:66,让用户输入数字,如果比66⼤,则显示猜测的结果⼤了;如果比66⼩,则显示猜测的结果小了;只有等于66,显示猜测结果
- 第一种方式(最简单的方式实现)
n = 66 # 理想数字
num = int(input('请输入一个数:')) # input()的返回值是字符串,所以需要使用int()转换下类型
if num > n:
print('很抱歉,你猜错了!')
elif num < n:
print('很抱歉,你猜错了!')
else: # 这个分支中else表示 num = n
print('恭喜你,猜对了!')
- 使用随机数进行猜数字,直至猜对为止(对猜数的范围有一个限定)
# 使用随机数猜数字
from random import randint # 导入一个包
n = randint(1, 100) # 随机产生1-100的随机数包含1和100
# random.randint(a,b):用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n:a<=n<=b
# # 限定猜数的范围
left = 1
right = 100
while True:
num = int(input(f'请输入你要猜的数({left}-{right}):')) # f声明字符串中包含变量 {left}表示一个left变量会替代进去
if num > n:
print('你猜大了')
right = num # 如果猜大了就将猜大的数作为右边的边界
elif num < n:
print('你猜小了')
left = num # 如果猜小了就将猜小的数字作为左边的边界
else:
print('你猜对了')
break # 猜对后直接终止本层循环
- 使用随机数进行猜数字,给定三次机会 (对猜数的范围有一个限定)
from random import randint
# random.randint(a,b):用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n:a<=n<=b
n = randint(1, 100) # 产生1-100的随机数
# 限定范围
left = 1
right = 100
count = 1 # 引入新的变量count来控制猜数的次数
while count <= 3:
num = int(input('请输入你要猜的数(%s-%s):' % (left, right)))
if num > n:
print('猜大了')
right = num # 缩小上限范围
elif num < n:
print('猜小了')
left = num # 缩小下限范围
else:
print('猜对了')
break # 猜对后结束循环不会执行下面的else
count += 1 # 每次循环自增1 控制猜数的次数
else: # 当三次机会用完的时候执行这个语句 只有当条件不成立的时候才能执行到它
print('太笨了')
python猜数字(多种实现方法)的更多相关文章
- python猜数字游戏快速求解解决方案
#coding=utf-8 def init_set(): r10=range(10) return [(i, j, k, l) for i in r10 for j in r10 for k in ...
- python猜数字游戏console版本
加入python学习小组后的第一次作业,python GUI写猜数字游戏.由于加班比较多,第一步先实现console版本,下一步再实现GUI版本. 虽然猜数字游戏是个小游戏,但是涉及到的基础知识点还是 ...
- java & python猜数字游戏对比
1.java版 package day03; import java.util.Random;import java.util.Scanner; /** * 猜数字游戏 * 随机生成一个1-100之间 ...
- python猜数字GUI版本V0.2
使用类方式编写猜数字游戏GUI版本. 思路:初始化数字以及初始化wegdits,编写button click event判断代码的函数,每猜一次点击button调用一次该函数,并计算猜的次数.如果猜对 ...
- python猜数字GUI版本V0.1
非常简单的GUI版猜数字游戏,后面有时间好好研究下 # -*- coding: utf-8 -*-"""Created on Mon Jan 28 16:30:17 20 ...
- 呕心沥血写的python猜数字
#猜数字 import random num_rd=random.randint(0,100) count=1 while 1<=count<=10: num_ip=input('请输入0 ...
- 详解python的数字类型变量与其方法
以下内容引自:https://www.jb51.net/article/97752.htm python数据类型是不允许改变的,这就意味着如果改变 Number 数据类型的值,将重新分配内存空间.下面 ...
- python求数字位数的方法
第一种:利用str()函数将数字转化成字符串,再利用len()函数判断位长. a=Int(raw_input("the number you want type in:") b=l ...
- python 猜数字游戏
import random print('==============学无止境==========') secret=random.randint(1,10) print('sec:',secret) ...
随机推荐
- LeetCode刷题 Flood Fill 洪水填充问题
An image is represented by a 2-D array of integers,each integers,each integer respresenting the sta ...
- fzu1977
题解: 和前两题差不多 只不过变成了有些一定走,有些不一定 代码: #include<cstdio> #include<cmath> #include<algorithm ...
- 最小生成树 Prim算法 和 Kruskal算法,c++描述
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- Xcode清理存储空间
文章来自 枣泥布丁 http://www.cocoachina.com/ios/20170711/19814.html 请针对性的选择删除 移除 Xcode 运行安装 APP 产生的缓存文件(Deri ...
- BCM5396的SPI理解
参考文档链接:https://pan.baidu.com/s/1kuXJmULwtjOW1TeOuTRPQQ *时钟极性和相位 BCM538X / BCM5396用于根据以下标准发送/接收SPI数据: ...
- Linux分区和挂载的理解
在工作中经常使用到Linux,对分区和挂载的概念一直都很模糊,对网上的信息进行了整理,方便理解. 1为什么要分区(需理解硬盘的组成) 1)数据的安全性,因为每个分区的数据是分开的.所以,当你需要将某个 ...
- 实力封装:Unity打包AssetBundle(三)
前情提要:第二种打包方式 窗口初现 通过前面的两篇教程和一篇番外,我们已经完全实现了打包的功能.但是使用起来总是觉得有些晦涩别扭,如果不告诉别人怎么使用,对方肯定是一头雾水. What?你给我的这是啥 ...
- LINQ(数据库操作增、删、改及并发管理)
本文将演示如何通过 Entity Framework 数据模型创建.修改.删除数据库记录. Customer cust = new Customer() { CustomerID = "LA ...
- wx小程序横向滚动
.subOper>scroll-view{ margin-bottom: 22rpx; width: 100%; white-space: nowrap; } /* subClass 是scro ...
- Bug02_MyBatis_org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
我出现问题的原因是: 映射xml文件名写错了. 查资料,可以有以下解决办法 按以下步骤一一执行: 1:检查xml文件所在的package名称是否和interface对应的package名称一一对应 2 ...