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) ...
随机推荐
- day05 数据类型
一.整形int 基本使用: 1,用途:记录年龄\等级\各种号码 2定义方式: age=18 age =int(18) x =int(‘123’)#只能将纯数字的字符串转换成整形 print(t ...
- redis系列--主从复制以及redis复制演进
一.前言 在之前的文章已经详细介绍了redis入门基础已经持久化相关内容包括redis4.0所提供的混合持久化. 通过持久化功能,Redis保证了即使在服务器宕机情况下数据的丢失非常少.但是如果这台服 ...
- day042 前端CSS选择器
今日内容: 高级选择器 1.子类选择器 用 > 表示 类比于相对路径 选择的是前一级标签的子标签 2后代选择器 用空格表示 选择的是前一级标签的后代标签 3并集选择器 用,逗号表示 选择的是用逗 ...
- openpyxl读取Excel数据
#! Python3 #-*- coding:utf8 -*- import openpyxl #载入表格内容 wb=openpyxl.load_workbook('e:\\work\\newFile ...
- Cracking The Coding Interview 1.7
//Write an algorithm such that if an element in an MxN matrix is 0, its entire row and column is set ...
- java8新特性Lambda练习
练习内容: 1.实现案例 /** *使用lambda表达式定义Collections.sort() */ /** *使用lambda表达式自定义比对方式 */ @Test public void Te ...
- Spring-data-JPA详细介绍
Spring-data-JPA学习: 1. https://blog.csdn.net/liujianwd/article/details/75411009 2.http://www.cnblogs. ...
- python笔记4-if..elif-else条件语句
python中条件判断使用if else来判断,多分支的话使用if elif ... else,也就是如果怎么怎么样就怎么怎么样,否则就怎么怎么这样,格式如下: #if是布尔类型判断,1个是真1个是假 ...
- 用MyEclipse开发REST Web Service
MyEclipse 在线订购年终抄底促销!火爆开抢>> MyEclipse最新版下载 使用MyEclipse开发RESTWeb服务来放大您的Web应用程序.在本教程示例中,您将创建一个简单 ...
- freemarker学习 (servlet + freemarker -> Struts2+freemarker -> springMVC+freemarker)
什么是freemarker? freemarker类似于jsp,但不是jsp!怎么说呢?freemarker文件后缀是.ftl,它不像jsp本质是servlet,它将构建模板.解析模板.使用模板分离开 ...