当前位置:首页>python>【Python】Day17:模块导入、pip与虚拟环境

【Python】Day17:模块导入、pip与虚拟环境

  • 2026-10-11 07:35:30
【Python】Day17:模块导入、pip与虚拟环境

🎯 学习目标

  1. 理解 模块 的概念:一个.py文件就是一个模块
  2. 掌握import的四种用法:import、from...import、as、*
  3. 认识 Python 标准库:random、time、os等
  4. 学会使用pip安装和管理第三方库
  5. 理解 虚拟环境 的作用,能用venv创建隔离环境

一、模块的概念与导入

  1. 为什么需要模块?
    • 把代码拆分到不同文件,避免单文件过大
    • 复用他人写好的代码(标准库、第三方库)
  2. 四种导入方式
    # 方式一:导入整个模块import mathprint(math.sqrt(16))   # 4.0  需要加前缀 math.# 方式二:导入模块中的特定功能from math import sqrt, piprint(sqrt(25))   # 5.0  不需要前缀print(pi)         # 3.14159...# 方式三:起别名import datetime as dtprint(dt.date.today())from collections import defaultdict as DDd = DD(list)# 方式四:导入所有(不推荐!容易命名冲突)from math import *print(sqrt(36))   # 6.0

二、常用标准库体验

  1. random:随机数
    import randomprint(random.randint(1, 10))   # 1~10的随机整数print(random.choice(["苹果", "香蕉", "橘子"]))  # 随机选一个nums = [1, 2, 3, 4, 5]random.shuffle(nums)   # 原地打乱print(nums)
  2. time:时间
    import timeprint(time.time())   # 时间戳:1735689600.123print(time.strftime("%Y-%m-%d %H:%M:%S"))  # 2025-01-01 12:00:00time.sleep(2)   # 暂停2秒print("2秒后打印")
  3. os:操作系统
    import osprint(os.getcwd())    # 当前工作目录# os.mkdir("test_dir")   # 创建目录print(os.path.exists("test.txt"))   # 文件是否存在

三、pip:第三方包管理器

  1. 什么是 pip?
    • Python 的"应用商店",用来安装第三方库
    • 第三方库:别人写好的代码,如requests(网络请求)、flask(Web框架)
  2. 常用命令
    # 安装pip install requests# 安装指定版本pip install requests==2.28.0# 卸载pip uninstall requests# 查看已安装pip list# 查看某个包的信息pip show requests# 导出依赖(重要!给别人用的时候)pip freeze > requirements.txt# 从依赖文件安装pip install -r requirements.txt

四、虚拟环境:项目隔离

  1. 为什么需要虚拟环境?
    项目A 需要 requests 2.25.0项目B 需要 requests 2.31.0→ 全局只能装一个版本,冲突了!→ 虚拟环境:每个项目有自己独立的包空间
  2. 创建和激活虚拟环境
    # 创建虚拟环境(在项目目录下)python -m venv venv# 激活(windows系统):venv\Scripts\activate# 激活后,终端前面会出现 (venv)(venv) $ pip install requests   # 装在虚拟环境里# 退出虚拟环境deactivate

⚠️ 常见坑

  1. from math import *命名冲突
    from math import *# 如果自己定义了同名变量/函数,会被覆盖
  2. pip 安装时没有激活虚拟环境
    • 装到了全局,可能污染其他项目
  3. 循环导入
    # a.pyfrom b import yx = 10# b.pyfrom a import x   # ❌ 循环导入报错!y = 20

✍️ 实战练习

  1. 随机密码生成器
    • 要求:用random生成8位随机密码(含大小写字母和数字)。
    • 示例:
      import randomimport stringdefgenerate_password(length=8):    chars = string.ascii_letters + string.digits  # string.ascii_letters 所有大小写字母   string.digits 所有数字return''.join(random.choice(chars) for _ in range(length))print(generate_password())   # aB3kL9mX
  2. 计时器
    • 要求:用time模块测量一段代码的执行时间。
    • 示例:
      import timestart = time.time()total = sum(range(1000000))end = time.time()print(f"耗时:{end - start:.4f}秒")

✅ 自测清单

  • [ ] 知道一个.py文件就是一个模块
  • [ ] 能区分import math和from math import sqrt的用法
  • [ ] 能用as给模块或函数起别名
  • [ ] 知道pip install、pip list、pip freeze的用途
  • [ ] 理解虚拟环境的作用,能用venv创建和激活
  • [ ] 知道from module import *不推荐使用

最新文章

随机文章