网站首页 > 技术文章 正文
在 Python 中,模块(Module) 是组织和复用(reuse code)代码的重要方式(a vital way)。
通过将相关功能封装(package)到单独的文件(separate files)中,我们可以让代码结构更清晰、更易维护(keep our codebase clean and maintainable)。
1. 模块是什么?
一个 Python 模块就是一个包含了变量、函数、类等(variables, functions, classes, etc.)可执行代码的文件,
通常以 .py 结尾(a file ending with .py)
当我们在其他脚本(script)中 导入该文件时,就能使用里面的内容(access its contents)。
示例:假设有一个名为 my_module.py 的文件,包含以下代码:
# my_module.py
def greet(name):
return f"你好, {name}!" # (Hello, {name}!)
PI = 3.14159
2. 如何创建并使用模块
2.1 创建模块 (Creating a Module)
- 新建一个 Python 文件,命名为 my_module.py
- 在文件中编写你所需的变量(variables you need)、函数或类。
2.2 导入模块
在另一个脚本(例如 main.py)中使用 import 或 from ... import 语句来导入模块。
示例:
# main.py
import my_module # 导入整个模块 (import the entire module)
print(my_module.greet("小明")) # 调用模块内函数 (call a function from the module)
print(my_module.PI)
输出:
你好, 小明!
3.14159
示例:
# main.py
from my_module import greet, PI # 从模块中导入指定内容 (import specific items)
print(greet("小红"))
print(PI)
3. 模块搜索路径与包 (Module Search Path & Packages)
3.1 模块搜索路径 (Module Search Path)
当我们导入模块时,Python 会按照 以下顺序 搜索模块:
- 当前脚本所在目录 (script directory)
- PYTHONPATH 环境变量指定的路径
- Python 安装目录及其 site-packages
3.2 包
一个 包(Package) 是包含 __init__.py 文件的文件夹(a folder containing...),用于将多个相关模块组织在一起(group related modules together)。
示例:
以下是电脑磁盘内的文件夹:
my_package/
__init__.py
module_a.py
module_b.py
导入方式:
import my_package.module_a
from my_package import module_b
4. 常见的内置与第三方模块 (Common Built-in & Third-Party Modules)
- 内置模块 :如 math, os, random, datetime 等,无需安装即可使用(without extra installation.)
- 第三方模块:如 requests, numpy, pandas 等,需要通过 pip 安装(install via pip)。
示例:安装并导入第三方模块 requests
在电脑的终端中输入(小黑窗口):
pip install requests
import requests
response = requests.get("https://www.example.com")
print(response.status_code)
5. 小贴士与注意事项 (Tips & Caveats)
- 命名冲突:尽量避免模块名与标准库或第三方库同名。
(Avoid naming conflicts with standard libraries or popular third-party packages.) - 使用别名:如果模块名太长,可使用 import xxx as yyy 来简化调用。
- 合理分层:将功能相近的模块放在同一个包中,便于管理和维护(management and maintenance.)。
- 模块内测试:在模块末尾写测试代码时,通常使用 if __name__ == "__main__": 判断,避免在被导入时自动执行。
★ 总结
通过了解 模块(Module) 与 包(Package) 的概念及使用方法,
可以大幅提升代码的复用性和维护性(significantly boosts code reusability and maintainability)
在实际开发中,你可以将通用函数、类等逻辑抽离到模块中,再通过包进行分层管理,既简化主脚本,也使项目结构更清晰!(the entire project becomes more coherent)
猜你喜欢
- 2025-03-17 一文掌握在 Python 中保存和加载 JSON 文件
- 2025-03-17 轻松玩转Python文件操作:移动、删除
- 2025-03-17 Python包中__init__.py文件的作用和用法
- 2025-03-17 Python 文件处理指南(python文件的操作步骤)
- 2025-03-17 python基础—pip指定包安装目录(pythonpip安装的默认路径)
- 2025-03-17 Python小案例55- os模块执行文件路径
- 2025-03-17 Python写入Excel表格模块:xlwt介绍
- 2025-03-17 Python 的标准库shutil: 优雅的文件和目录操作
- 2025-03-17 Python OS 库基础知识(os.python)
- 2025-03-17 Python 文件操作:从基础到实践(python如何进行文件操作)
- 05-25Python 3.14 t-string 要来了,它与 f-string 有何不同?
- 05-25Python基础元素语法总结
- 05-25Python中的变量是什么东西?
- 05-25新手常见的python报错及解决方案
- 05-2511-Python变量
- 05-2510个每个人都是需要知道Python问题
- 05-25Python编程:轻松掌握函数定义、类型及其参数传递方式
- 05-25Python基础语法
- 257℃Python短文,Python中的嵌套条件语句(六)
- 257℃python笔记:for循环嵌套。end=""的作用,图形打印
- 256℃PythonNet:实现Python与.Net代码相互调用!
- 251℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 251℃Python实现字符串小写转大写并写入文件
- 106℃原来2025是完美的平方年,一起探索六种平方的算吧
- 91℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 81℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)