python---模块
文章目录
- 模块的主要作用
- 模块分类
- 使用模块
- 导入模块
- 从模块导入特定内容
- 给模块或导入内容起别名
- 导入模块中的所有内容(不推荐)
- 创建自定义模块
- 模块搜索路径
- 特殊变量 __name__
- 标准库模块示例
模块(Module)是 Python 中组织代码的基本单位,它是一个包含 Python 定义和语句的文件,文件名就是模块名加上 .py 后缀。
模块的主要作用
1、代码重用:可以将常用的功能封装在模块中,供多个程序使用
2、命名空间管理:避免命名冲突
3、代码组织:将相关代码组织在一起,提高可维护性
模块分类
1、内置模块
2、第三方模块
需要手动下载,打开cmd命令行,使用命令"pip install 模块名"下载模块,
使用命令"pip uninstall 模块名" 卸载模块
3、自定义模块
使用模块
导入模块
# 导入整个模块
import math# 使用模块中的内容
print(math.pi) # 3.141592653589793
从模块导入特定内容
这样子变量可以直接使用不需要 “模块名.变量”,但是也会和本文件的文件名产生冲突。
示例代码1:
# 从模块导入特定函数/变量
from math import pi, sqrtprint(pi) # 3.141592653589793
print(sqrt(16)) # 4.0
示例代码2:
# 从模块导入特定函数/变量
from math import pi, sqrtpi = 5print(pi) # 5
print(sqrt(16)) # 4.0
给模块或导入内容起别名
# 给模块起别名
import numpy as np# 给导入的内容起别名
from math import sqrt as square_root# 支持多个数据同时起别名
from math import pi as a, sqrt as b
导入模块中的所有内容(不推荐)
变量和方法会起冲突,后导入的覆盖先导入的
from math import * # 导入math模块中的所有内容print(pi) # 可以直接使用,不需要math.前缀
创建自定义模块
1、创建一个 .py 文件,例如 mymodule.py
2、在文件中定义函数、变量等
# mymodule.py
def greet(name):return f"Hello, {name}!"version = "1.0"
3、在其他文件中导入使用
import mymoduleprint(mymodule.greet("Alice")) # Hello, Alice!
print(mymodule.version) # 1.0
模块搜索路径
当导入一个模块时,Python 会按以下顺序搜索:
1、当前目录
2、PYTHONPATH 环境变量指定的目录
3、Python 安装的默认路径
可以通过 sys.path 查看搜索路径:
import sys
print(sys.path)
特殊变量 name
每个模块都有一个 name 属性:
1、当模块被直接运行时,name 等于 ‘main’
2、当模块被导入时,name 等于模块名
常用于编写测试代码:
示例代码1:
为了测试目前是否运行该文件
# mymodule.py
def func():print("This is a function")if __name__ == '__main__':# 以下代码只在直接运行该模块时执行print("Running the module directly")func()
输出结果1:
Running the module directly
This is a function
示例代码2:
print(__name__)
输出结果2:
__main__
示例代码3:
在新建的mymodule模块中假如以下代码:
def getfilename():print(__name__)
在运行的文件中假如以下代码:
import mymodule
mymodule.getfilename()
输出结果3:
输出结果为导入模块的名称
mymodule
标准库模块示例
Python 自带许多有用的标准库模块:
import os # 操作系统接口
import sys # 系统相关功能
import math # 数学运算
import random # 生成随机数
import datetime # 日期时间处理
import json # JSON 处理
import re # 正则表达式