• 【Python百日刷题计划】Day12~填空和编程题练习


    📚前言 

    ✅本次主要是<填空和编程题练习>难度中等,快来看看吧。

    文章目录

    📚前言 

    🎆题目一:五道编程练习题

    🎇题目要求 

    🎇我的分析

    🎇我的答案

    🎆题目二:恺撒密码

    🎇题目要求

    🎇我的分析

    🎇我的答案

    🎆题目三:猴子分桃

    🎇题目要求

    🎇我的分析

    🎇我的答案

    🎆题目四:制作奇数

    🎇题目要求

    🎇我的分析

    🎇我的答案

     📚结语

    🎆题目一:五道编程练习题

    🎇题目要求 

    填空题1:为了提高Python代码加载速度和进行适当的保密,可以将Python程序文件编译为扩展名_______的文件 

    填空题2:使用命令_________可以查看本机当前Python}版本下已安装的所有扩展库名称和版本号

    填空题3:表达式int(4**0.5)的值为_________

    填空题4:表达式eval('*'.join('1234'))的值为__________

    填空题5:表达式chr(ord('a')32)的值为_______

    🎇我的分析

     填空题1和2都是基础常识题目,填空题3是非常简单的,至于填空题4主要考察了join和内置函数eval的结合使用难度也是不大的,填空题5主要也是考察内置函数的使用和一些基本的ASCII码值的了解,Python中所有的内置函数在我之前的博客中也已经记录过了。

    🎇我的答案

     填空题1:pyc

     填空题2:pip freeze

     填空题3:2

     填空题4:24

     填空题5:'A'

    🎆题目二:恺撒密码

    🎇题目要求

    原文:ABCDEFGHIJKLMNOPQRSTUVWXYZ

    对应的密文为: DEFGHIJKLMNOPQRSTUVWXYZABC,请设计程序实现.

    输出示例:

    🎇我的分析

    该题目主要的难点就是找到加密的方式规律

    🎇我的答案

    1. plaincode = input('请输入你要转换的明文 :')
    2. for p in plaincode:
    3. if 'a' <= p <= 'z':
    4. res = chr(ord('a') + (ord(p)-ord('a') + 3)%26)
    5. print(res,end='')
    6. elif 'A' <= p <= 'Z':
    7. res = chr(ord('A') + (ord(p)-ord('A') + 3)%26)
    8. print(res, end='')
    9. else:
    10. print(p,end='')

    答案验证

    🎆题目三:猴子分桃

    🎇题目要求

    题目: 海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多 的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一 个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?

    🎇我的分析

    这道题目与数学题目息息相关,抓住题目的要求和关键就也可以很快解出。设一开始有一个桃子,肯定不够分。然后在这一个桃子的基础上,利用do...while循环。每次来一个猴子,桃子数量就会减一再乘以0.8(即拿五分之一剩下五分之四),只要判断五次循环后,拿到的五分之一的桃子是否为整数即可

    🎇我的答案

    1. i = 0
    2. j = 1
    3. x = 0
    4. while (i < 5) :
    5. x = 4 * j
    6. for i in range(0,5) :
    7. if(x%4 != 0) :
    8. break
    9. else :
    10. i += 1
    11. x = (x/4) * 5 +1
    12. j += 1
    13. print(f'海滩上原来最少有{x}个桃子')
    14. 输出结果:
    15. 海滩上原来最少有3121.0个桃子

    🎆题目四:制作奇数

    🎇题目要求

     求0—7所能组成的奇数个数

    🎇我的分析

     这道题目的难度是比较大的,规律有一点不好找,其实,所谓奇数,就是不能够被2整除的数字,比如:1、3、5、7、9等,而这里,求0—7所能组成的奇数的个数,则我们可以逐步的探索。

    规律,大致是如下的:

    组成1位数是4个,分别为:1,3,5,7

    组成2位数是7*4个,分别为:11,13,15,17,21,23,25,27......71,73,75,77。一共是7乘以4个。

    组成3位数是784个,分别为101,103,105,107,111,113,115,117......771,773,775,777。则一共是784个。其中784,第一个7,表示百分位的变化范围,8为十分位的变化范围,4为个数分位的变化范围,三个数字进行排列组合,即可得到数字为3的数字的变化范围。下面组成4位数及再往下的规律,则与此基本上是想通的,达到7个位数,就是最高了。

    组成4位数是788*4个。

    🎇我的答案

    1. sum = 4
    2. s = 4
    3. for j in range(2,9):
    4. print(sum)
    5. if j <= 2:
    6. s *= 7
    7. else:
    8. s *= 8
    9. sum += s
    10. print('sum = %d' % sum)
    11. 输出结果:
    12. 32
    13. 256
    14. 2048
    15. 16384
    16. 131072
    17. 1048576
    18. sum = 8388608

    📚结语

    📙感谢各位能够看到这里💖💖💖:在鲁迅一篇未发表的文章中说过:“代码看懂了不是懂✨一定要自己实际操作哇✨这样才能更好的理解和吸收。”
    最后来一句:一个人可以在任何他怀有无限热忱的事情上成功,让我们一起进步吧✨✨

  • 相关阅读:
    电脑桌面便签工具选择哪一款?
    基于YOLOv8模型的海洋生物目标检测系统(PyTorch+Pyside6+YOLOv8模型)
    C++ 二级指针与 const 关键字
    【华为机试真题 JAVA】5键键盘的输出-100
    xv6源码解析(三)——内存管理
    Flask 学习-25.passlib 对密码加密与验证
    git 新建 branch 推送 到服务器
    新版Testwell CTC++带来哪些新变化?
    【CV】Landslide4Sense-2022
    仅用5000行代码,在V853上AI渲染出一亿幅山水画
  • 原文地址:https://blog.csdn.net/weixin_64471900/article/details/126567232