小甲鱼Python学习笔记

模块的定位:高级封装形式

  • 回顾之前的封装类型
    • 容器:列表、元组、字符串、字典 → 对数据的封装
    • 函数:对语句的封装
    • 类:对方法和属性的统一封装 → 函数+数据
  • 模块的定义:模块就是程序;以.py为后缀的Python文件即独立模块

核心概念:命名空间

  • 概念类比:避免名字冲突(如不同班级同名的"小花")
  • 作用:模块中的函数/变量需通过模块名.成员名调用,明确归属
  • 示例问题:直接调用high()报错 → 需用hello.high()指定命名空间

模块的导入方法

  1. 直接导入:import 模块名
    • 语法:import temperature_conversion
    • 调用方式:模块名.函数名(如temperature_conversion.c_to_f(32)
    • 特点:保留命名空间,避免名字冲突
  2. 导入指定成员:from 模块名 import 函数/变量
    • 语法:from temperature_conversion import c_to_f, f_to_c
    • 调用方式:直接写函数名(如c_to_f(32)
    • 注意:不推荐用from 模块名 import * → 会破坏命名空间,引发名字混乱
  3. 导入并别名:import 模块名 as 别名
    • 语法:import temperature_conversion as tc
    • 调用方式:别名.函数名(如tc.c_to_f(32)
    • 特点:简化模块名,保留命名空间 → 推荐使用

实战示例:温度转换模块

  • 模块文件:temperature_conversion.py
    • 定义函数c_to_f(c):摄氏度转华氏度(公式:f = c*1.8 +32
    • 定义函数f_to_c(f):华氏度转摄氏度(公式:c = (f-32)/1.8
  • 调用文件:calculation.py → 导入模块后调用函数,输出转换结果