Python 函数与模块
·
Python 函数与模块
在 Python 编程中,函数(Function)和模块(Module)是提升代码复用性、可读性和可维护性的核心工具
一、Python 函数:封装可复用的代码块
1. 什么是函数?
函数是一段命名的、可重复执行的代码块,它可以接收输入参数,执行特定逻辑后返回结果(也可无返回)。简单来说,函数就像一个 “工具”:你定义它的功能,之后可以反复调用,无需重复编写相同代码。
2. 函数的基本使用
(1)定义函数
使用 def 关键字定义函数,语法格式:
python
运行
def 函数名(参数列表):
"""函数文档字符串(可选,说明函数功能)"""
函数体(要执行的代码)
return 返回值(可选)
(2)示例:一个计算两数之和的函数
python
运行
def add(a, b):
"""计算两个数的和并返回结果"""
result = a + b
return result
# 调用函数
sum_result = add(3, 5)
print(sum_result) # 输出:8
(3)函数的核心特性
- 参数:分为位置参数(必须按顺序传值)、关键字参数(按参数名传值)、默认参数(定义时指定默认值)、可变参数(*args 接收任意位置参数,**kwargs 接收任意关键字参数)。示例(默认参数):
python
运行
def greet(name, greeting="Hello"): return f"{greeting}, {name}!" print(greet("小明")) # 输出:Hello, 小明! print(greet("小红", "Hi")) # 输出:Hi, 小红! - 返回值:用
return语句返回结果,无return则默认返回None。 - 作用域:函数内部定义的变量为 “局部变量”(仅函数内可用),函数外定义的为 “全局变量”(需用
global关键字才能在函数内修改)。
3. 函数的价值
- 减少代码冗余:相同逻辑只需写一次,多次调用;
- 提高代码可读性:函数名可直观体现功能(如
add、greet); - 便于调试:只需维护函数内部逻辑,修改一处即可生效。
二、Python 模块:组织函数和变量的 “容器”
1. 什么是模块?
模块是一个以 .py 为后缀的 Python 文件,里面可以包含函数、类、变量,甚至可执行代码。它的核心作用是将代码按功能拆分,让大型项目的代码结构更清晰。
比如,你可以创建一个 math_tools.py 文件(这就是一个模块),里面存放所有和数学计算相关的函数:
python
运行
# math_tools.py
def add(a, b):
return a + b
def multiply(a, b):
return a * b
PI = 3.1415926
2. 模块的使用:导入与调用
要使用模块中的内容,需用 import 关键字导入,常见导入方式有 3 种:
(1)导入整个模块
python
运行
# 导入math_tools模块
import math_tools
# 调用模块中的函数/变量:模块名.函数名/变量名
print(math_tools.add(2, 3)) # 输出:5
print(math_tools.PI) # 输出:3.1415926
(2)导入模块中的指定内容
python
运行
# 只导入add函数和PI变量
from math_tools import add, PI
print(add(4, 5)) # 输出:9
print(PI) # 输出:3.1415926
(3)导入并指定别名(简化调用)
python
运行
# 给模块起别名
import math_tools as mt
print(mt.multiply(2, 6)) # 输出:12
# 给函数起别名
from math_tools import add as addition
print(addition(7, 8)) # 输出:15
3. 内置模块与第三方模块
Python 的模块分为三类,满足不同需求:
- 内置模块:Python 自带的模块(无需安装),如
math(数学计算)、os(系统操作)、datetime(时间处理);示例:使用内置math模块python
运行
import math print(math.sqrt(16)) # 计算平方根,输出:4.0 - 自定义模块:自己编写的
.py文件(如上面的math_tools.py); - 第三方模块:开发者社区提供的模块(需先安装),如
numpy(数值计算)、requests(网络请求);安装第三方模块(终端执行):bash
运行
使用第三方模块:pip install requestspython
运行
import requests response = requests.get("https://www.baidu.com") print(response.status_code) # 输出:200(请求成功)
三、函数与模块的关系:从 “工具” 到 “工具包”
函数是 “单个工具”,模块是 “装工具的工具箱”:
- 一个模块中可以包含多个函数(甚至多个类、变量),比如
math模块包含sqrt()、sin()、cos()等数十个数学函数; - 大型项目中,还可以将多个相关模块组合成 “包(Package)”(包含
__init__.py文件的文件夹),进一步拆分代码(如numpy包包含数百个模块)。
总结
- 函数是封装单一功能的代码块,核心价值是代码复用和逻辑解耦,通过
def定义、return返回结果; - 模块是存放函数 / 变量 / 类的
.py文件,核心作用是组织代码结构,通过import导入使用,分为内置、自定义、第三方三类; - 函数 + 模块是 Python 模块化编程的基础,能让代码从 “杂乱的一行行” 变成 “有结构的工具集合”,是编写大型项目的必备能力。
更多推荐

所有评论(0)