Python每日一练——第3天:三种猜数字小游戏

前言📢📢

Python每日一练来啦,本文已收录于:《Python每日一练》专栏

此专栏目的在于,帮忙学习Python的小白提高编程能力,训练逻辑思维,每周持续更新中,欢迎免费订阅!!!

在这里插入图片描述



1. 问题描述

需求描述:

  • 随机生成一个100以内的整数,共有10次机会开始游戏,输入猜测的数字
  • 如果猜小了,提示猜小了
  • 如果猜大了,提示猜大了
  • 猜对了,提示猜对了,并且结束游戏
  • 10次机会用完还没猜对,提示游戏结束,没有猜到。

  • 小伙伴们看了问题描述后,一定要自己先练习,再去看博主的代码和解题思路,才能提高自己的编程水平,全靠自觉哟!!!
  • 欢迎小伙伴们把自己的思路或答案在评论区留言,博主会选一个最优解答进行置顶。
    在这里插入图片描述

2. 算法思路

1. 使用random库的randint函数生成一个100以内的随机数。


2. 使用 for 循环进行循环10次,每次提示输入要猜测的数字,猜大或猜小都做下相应的提示,并输出还剩下几次机会。


3. 当在10次机会内猜对数字,提示猜对了,你真棒,只用了几次机会。


4. 10次机会用完还没猜对,提示游戏结束,猜不出来吧。

3. 代码实现

方式1:限制只能猜十次

实现代码📝:

"""
Python每日一练
猜数字小游戏
random库 randint的使用方式
random.randint(a,b) 生成一个[a,b]之间的整数 (包含a、b)
"""

import random

# 随机生成一个1-100之间的整数
number = random.randint(0, 100)
# 循环十次结束
for i in range(10):
    # input函数从键盘输入要猜的数字,并转换为int类型
    choice = int(input("请输入你要猜测的数字:"))
    # 大于目标数字
    if choice > number:
        print("你猜大了")
    # 小于目标数字
    elif choice < number:
        print("你猜小了")
    # 等于目标数字
    else:
        print("你猜对了,真棒!")
        print(f"你一共用了{i + 1}次机会")
        break
    print(f"还剩{9 - i}次机会")
else:
    print("游戏结束你还没有猜到。")

运行结果👇:

我猜了十次才中运气没谁了
在这里插入图片描述

方式2:不限次数猜

实现代码📝:

"""
Python每日一练
猜数字小游戏
random库 randint的使用方式
random.randint(a,b) 生成一个[a,b]之间的整数 (包含a、b)
"""

import random

# 随机生成一个1-100之间的整数
number = random.randint(0, 100)
# 统计所猜次数
count = 0
while True:
    # 每循环一次,count加1
    count += 1
    # input函数从键盘输入要猜的数字,并转换为int类型
    choice = int(input("请输入你要猜测的数字:"))
    # 大于目标数字
    if choice > number:
        print("你猜大了")
    # 小于目标数字
    elif choice < number:
        print("你猜小了")
    # 等于目标数字
    else:
        print("你猜对了,真棒!")
        print(f"你一共用了{count}次机会")
        break

运行结果👇:

在这里插入图片描述

方式3:我们输入答案电脑来猜

接下来我们对这个游戏进行一个小改动,由用户输入一个数字,让电脑猜:

实现代码📝:

"""
Python每日一练
猜数字小游戏
random库 randint的使用方式
random.randint(a,b) 生成一个[a,b]之间的整数 (包含a、b)
"""

import random

# 输入一个正确答案
answer = int(input('请输入答案:'))
# start表示范围开始值
start = 1
# end表示范围结束值
end = 100
# count依然用于统计次数
count = 0
# 电脑程序所猜第一个值,我们先在循环外得到
guess = random.randrange(start, end)
# 每循环一次,改变范围
while True:
    count += 1
    if guess > answer:
        print(f'电脑猜{guess},猜大了')
        end = guess
        guess = random.randrange(start, guess)
    elif guess < answer:
        print(f'电脑猜{guess},猜小了')
        start = guess + 1
        guess = random.randrange(start, end)
    else:
        print(f'正确答案:{answer},电脑猜:{guess}:电脑猜了:{count}次猜中了')
        break

运行结果👇:

在这里插入图片描述


《100天精通Python从入门到就业》专栏推荐白嫖80G学习大礼包

《100天精通Python从入门到就业》:本专栏专门针对零基础和需要进阶提升的同学所准备的一套完整教学,从0到100的不断进阶深入,后续还有实战项目,轻松应对面试,专栏订阅地址:https://blog.csdn.net/yuan2019035055/category_11466020.html

  • 优点订阅限时9.9付费专栏进入千人全栈VIP答疑群,作者优先解答机会(代码指导、远程服务),群里大佬众多可以抱团取暖(大厂内推机会)!
  • 专栏福利简历指导、招聘内推、每周送实体书、80G全栈学习视频、300本IT电子书:Python、Java、前端、大数据、数据库、算法、爬虫、数据分析、机器学习、面试题库等等
    在这里插入图片描述
    在这里插入图片描述
免费资料获取,更多粉丝福利,关注下方公众号获取

在这里插入图片描述

  • 100
    点赞
  • 277
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 99
    评论
函数是一段封装了特定功能的代码块,可以重复调用。无论是编写程序还是解决问题,函数都是非常重要的工具。了解并熟练使用函数对于精通Python的基础篇来说十分重要。 在Python中,函数的定义以关键字"def"开头,后面是函数的名称和参数列表。参数列表用于接收调用函数时传递的参数。在函数体内部,通过缩进来组织函数代码,并使用return语句返回函数的结果。 函数的优势体现在以下几个方面: 1. 代码的重用性:可以将一段常用的代码封装成函数,以便在其他地方重复使用,提高了代码的可读性和可维护性。 2. 简化程序结构:函数可以将复杂的问题分解为多个简单的小问题,使程序结构更加清晰,易于理解和修改。 3. 提高代码的可测试性:函数是模块化的单元,可以独立测试和验证,减少了程序出错的可能性。 在编写函数时,要注意以下几点: 1. 函数名称要有意义,能够表达函数的功能。 2. 参数列表可以根据需要进行定义,可以有多个参数,也可以没有参数。 3. 函数的代码要尽量简洁、清晰,避免冗余和重复的部分。 4. 在函数内部,可以使用局部变量来保存中间结果,避免对全局变量的过多依赖。 总之,函数是编程中不可或缺的组成部分,掌握了函数的使用,就掌握了解决问题的利器。在后续的学习中,我们将进一步学习函数的高级应用,如函数的递归调用、函数的参数传递等。通过不断的实践和练习,相信不久的将来,我们就能够精通Python的基础篇。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 99
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

袁袁袁袁满

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值