Python函数与模块完整教程_定义调用与包管理解析

14次阅读

python函数、模块、包及第三方库管理是代码组织与复用的核心:函数用def定义并支持多种参数形式;模块为.py文件,支持多种import方式;包是含__init__.py的目录;第三方库需配合venv与pip规范管理。

Python函数与模块完整教程_定义调用与包管理解析

python函数和模块是组织代码、提升复用性和可维护性的核心机制。掌握如何正确定义函数、合理调用、正确导入模块以及规范管理包,是写出清晰、健壮、可协作代码的基础。

函数:封装逻辑,按需执行

函数是一段可重复使用的代码块,用于完成特定任务。定义使用 def 关键字,后接函数名、括号和冒号;括号内可声明参数,函数体需缩进。

常见要点:

  • 参数支持位置参数、关键字参数、默认值、*args(任意位置参数)和 **kwargs(任意关键字参数)
  • 函数可通过 return 返回一个或多个值(实际返回元组);无 return 则默认返回 None
  • 函数本身是对象,可赋值给变量、作为参数传入其他函数(高阶函数),也支持嵌套与闭包
  • 文档字符串"""...""")写在函数首行,可用 help(func) 查看

模块:独立文件,按需加载

一个以 .py 结尾的文件就是一个模块。模块内可定义函数、类、变量等,供其他脚本导入使用。

立即学习Python免费学习笔记(深入)”;

导入方式有多种,适用不同场景:

  • import module_name —— 导入整个模块,使用时加前缀,如 module_name.func()
  • from module_name import func1, func2 —— 只导入指定成员,直接调用 func1()
  • from module_name import * —— 不推荐,易引发命名冲突且降低可读性
  • import module_name as alias —— 重命名模块,简化书写,如 import numpy as np

模块首次被导入时执行其顶层代码(包括函数定义、print、赋值等),后续导入仅复用已加载对象。

包:模块的目录化组织

包是包含多个模块的目录,必须含一个名为 __init__.py 的文件(可为空)。该文件标识该目录为 Python 包,并可控制包的初始化行为与导入接口

典型结构示例:

my_package/ ├── __init__.py ├── utils.py ├── core.py └── subpkg/     ├── __init__.py     └── helpers.py

常用操作:

  • from my_package import utilsimport my_package.utils
  • from my_package.subpkg import helpers
  • __init__.py 中通过 from . import xxxfrom .xxx import yyy 暴露常用接口,使用户能简洁地 from my_package import yyy
  • __all__ = ['func_a', 'ClassB'] 可显式声明 from package import * 允许导入的内容(仍不建议用 *)

安装与管理第三方包:pip + venv 是标配

Python 生态依赖大量第三方包(如 requestspandas),它们不是标准库的一部分,需单独安装。

关键实践:

  • 始终使用虚拟环境python -m venv myenv),避免项目间依赖冲突
  • 激活环境后用 pip install package_name 安装;pip install -r requirements.txt 批量安装
  • pip freeze > requirements.txt 导出当前环境所有包及版本,便于协作与部署
  • 区分 pip install(用户级)与 pip install --user(非管理员时的安全选择)
  • 注意包名与导入名可能不同,例如安装 python-dotenv,但导入用 import dotenv

不复杂但容易忽略。

text=ZqhQzanResources