当前位置: 首页 > backend >正文

6个月Python学习计划 Day 10 - 模块与标准库入门

第一周

Day 1 - Python 基础入门 & 开发环境搭建
Day 2 - 条件判断、用户输入、格式化输出
Day 3 - 循环语句 + range 函数
Day 4 - 列表 & 元组基础
Day 5 - 字典(dict)与集合(set)
Day 6 - 综合实战:学生信息管理系统
Day 7 - 复盘 + 测试日

第二周

Day 8 - Python 函数基础
Day 9 - 函数进阶用法


🎯 今日目标:

  1. 理解模块是什么、为什么使用模块
  2. 学会导入模块(内置、自定义)
  3. 熟练使用 math、random、datetime 模块
  4. 编写并导入一个自定义模块(如:判断质数、字符串反转)

🧩 一、什么是模块(Module)?

模块是 Python 文件,包含了函数、变量和类等内容。通过模块化,我们可以分文件组织代码、复用逻辑,提升代码的可维护性。

✅ 模块的基本使用

# 假设 hello.py 中定义了以下函数:
def say_hello(name):print(f"你好,{name}!")
# main.py 中导入使用
import hellohello.say_hello("小明")  # 输出:你好,小明!

✳️ 常见导入方式

import math                  # 导入模块
from math import sqrt        # 导入模块中某个函数
from math import *           # 导入模块中所有内容(不推荐)
import math as m             # 给模块起别名

📦 二、常用标准库简介(内置模块)

  1. math 数学库

    import mathprint(math.sqrt(16))      # 4.0
    print(math.ceil(3.2))     # 4
    print(math.floor(3.9))    # 3
    print(math.pi)            # 3.141592653...
    
  2. random 随机数模块

    import randomprint(random.randint(1, 10))           # 随机整数 1~10
    print(random.choice(['a', 'b', 'c']))  # 随机选择一个
    print(random.shuffle([1, 2, 3, 4]))    # 打乱列表顺序
    
  3. datetime 日期时间模块

    import datetimenow = datetime.datetime.now()
    print("当前时间:", now)delta = datetime.timedelta(days=7)
    next_week = now + delta
    print("一周后:", next_week)
    

🛠 三、自定义模块实战(练习)

步骤:

  1. 创建一个模块 tools.py,写一个函数 is_prime(n) 判断是否是质数。

  2. 在主程序中导入并测试。

    # tools.py
    def is_prime(n):if n < 2:return Falsefor i in range(2, int(n**0.5)+1):if n % i == 0:return Falsereturn True
    
    # main.py
    from tools import is_primeprint(is_prime(7))  # True
    print(is_prime(10)) # False
    

📌 今日练习任务

  1. 导入 math 模块,输出圆周率、开平方和取整函数结果。

    import math# 圆周率
    print("圆周率:", math.pi)# 计算 16 的平方根
    print("16 的平方根:", math.sqrt(16)) # 向上取整
    print("向上取整 3.2:", math.ceil(3.2))# 向下取整
    print("向下取整 3.9:", math.floor(3.9)) 
  2. 使用 random 模块生成 5 个 1~100 的随机整数。

    import randomprint("5 个随机整数:")
    for _ in range(5):print(random.randint(1, 100)) 
    

    输出结果:

    5 个随机整数:
    52
    80
    8
    73
    43
    
  3. 使用 datetime 模块获取当前时间,并计算 100 天后的日期。

    import datetimenow = datetime.datetime.now()
    print("当前时间:", now)delta = datetime.timedelta(days=100)
    future = now + delta
    print("100 天后是:", future)
    

    输出结果:

    当前时间: 2025-05-31 21:34:56.669295
    100 天后是: 2025-09-08 21:34:56.669295
    
  4. 创建一个 my_utils.py 文件,写一个函数 reverse_str(s) 返回字符串反转结果,主程序中调用它。

    🔧 文件:my_utils.py

    # my_utils.pydef reverse_str(s):"""返回字符串的反转结果"""return s[::-1]
    

    🧪 主程序调用:main.py

    # main.py
    from my_utils import reverse_strtext = "Hello Python"
    print("原始字符串:", text)
    print("反转后:", reverse_str(text))
    

    输出结果:

    原始字符串: Hello Python
    反转后: nohtyP olleH
    

✅ 小结表格

模块功能简介
math数学函数(平方根、π、取整)
random随机数生成与处理
datetime时间与日期计算
自定义模块组织函数、自定义功能模块
http://www.xdnf.cn/news/10332.html

相关文章:

  • 表单校验代码和树形结构值传递错误解决
  • 【Qt】Bug:findChildren找不到控件
  • 【C语言练习】074. 理解C语言中的多线程编程
  • MySQL 8.0:解析
  • Github 热点 Github 热点 Syncthing:多台设备,持续同步文件,安全同步,隐私无忧!
  • 79. 单词搜索-极致优化,可行性剪枝和顺序剪枝
  • LeetCode 1010. 总持续时间可被 60 整除的歌曲
  • leetcode hot100刷题日记——30.两数之和
  • 那些常用的运维工具
  • LeetCode 1524. 和为奇数的子数组数目
  • 【题解-洛谷】P9422 [蓝桥杯 2023 国 B] 合并数列
  • Flask-Login使用示例
  • R语言错误处理方法大全
  • Python 从入门到精通视频下载
  • Nacos实战——动态 IP 黑名单过滤
  • 【LLM】FastAPI入门教程
  • 无公网ip远程桌面连接不了怎么办?内网计算机让外网访问方法和问题分析
  • 2. 手写数字预测 gui版
  • VMvare 创建虚拟机 安装CentOS7,配置静态IP地址
  • Kubernetes架构与核心概念深度解析:Pod、Service与RBAC的奥秘
  • 算法训练第四天
  • 企业上线ESOP(电子标准操作程序)电子作业指导书,实现车间无纸化,是数字化转型的重要一步
  • ZC-OFDM雷达通信一体化减小PAPR——部分传输序列法(PTS)
  • 利用python工具you-get下载网页的视频文件
  • 学习笔记:3个学习AI路上反复看到的概念:RAG,Langchain,Agent
  • MySql(十)
  • 字符串~~~
  • 【Python训练营打卡】day40 @浙大疏锦行
  • 前端学习(7)—— HTML + CSS实现博客系统页面
  • python魔法函数