当前位置:首页>python>Python 函数完全指南(上):定义、分类与形参

Python 函数完全指南(上):定义、分类与形参

  • 2026-09-02 16:06:57
Python 函数完全指南(上):定义、分类与形参

函数是组织良好、可以重复调用、用于完成特定功能的代码块。本篇从函数的定义与调用出发,讲清使用函数的价值、函数分类以及形参与实参。

本篇目录

1. 函数的定义与调用

2. 为什么要使用函数

3. 函数的分类

4. 形参与实参


1. 函数的定义与调用

1.1 定义函数

Python 使用 def 关键字定义函数:

def 函数名(参数列表):  函数体

例如:

def greet(name):  print(f"你好,{name}!")

函数定义由以下部分组成:

组成部分
示例
作用
定义关键字
def
表示开始定义函数
函数名
greet
调用函数时使用的名称
参数列表
(name)
接收调用者传入的数据
冒号
:
表示函数头结束
函数体
缩进代码块
保存函数真正执行的逻辑

即使函数不需要参数,也必须保留括号:

def say_hello():  print("Hello")

1.2 调用函数

定义函数不会立即执行函数体。只有使用“函数名 + 括号”调用时,函数体才会执行:

say_hello()greet("张三")

Python 按照从上到下的顺序执行代码,因此函数通常需要先定义,再调用:

def study():  print("开始学习 Python")study()

1.3 入门案例

def show_java_plan(name):  """输出指定学生的 Java 学习规划。"""  print(f"{name} —— Java 学生入学规划:")  print("1. 了解个人基础")  print("2. 学习 JavaSE")  print("3. 学习前端基础")  print("4. 学习数据库")  print("5. 学习主流框架")  print("6. 完成项目实战")  print("7. 面试冲刺")show_java_plan("张三")show_java_plan("王五")

同一个函数传入不同的姓名,就能处理不同学生,函数体不需要重复编写。


2. 为什么要使用函数

函数的核心思想是:把相对独立、可能重复使用的逻辑封装起来,并通过参数接收变化的数据。

使用函数主要有以下好处:

1. 提高复用性:一次定义,可以多次调用。

2. 降低重复:相同逻辑不需要复制多份。

3. 方便维护:需求变化时,只修改函数内部即可。

4. 结构清晰:把复杂程序拆分成多个职责明确的小模块。

5. 便于测试:可以单独验证每个函数的输入和输出。

可以把函数理解成一台机器:

参数(输入) → 函数体(处理) → 返回值(输出)

参数和返回值都不是必需的,一个函数可以:

• 没有参数,也没有显式返回值;

• 有参数,但没有显式返回值;

• 没有参数,但有返回值;

• 既有参数,也有返回值。


3. 函数的分类

3.1 内置函数

内置函数由 Python 直接提供,不需要导入模块就可以调用。

# 输入与输出print("Hello")name = input("请输入姓名:")# 类型转换age = int("18")price = float("3.14")text = str(100)numbers = list((1, 2, 3))# 序列与数值处理length = len([1, 2, 3])maximum = max(1, 5, 3)minimum = min(1, 5, 3)total = sum([1, 2, 3])numbers_range = range(5)

常用内置函数包括 print()、input()、len()、type()、int()、str()、max()、min() 和 sum() 等。

3.2 模块提供的函数

标准库或第三方库中的函数,需要先导入才能使用。

使用标准库:

import randomnumber = random.randint(1, 10)print(number)

也可以只导入某个函数:

from random import randintprint(randint(1, 10))

使用第三方库前,一般需要先安装:

pip install numpy
import numpy as nparray = np.array([1, 2, 3])print(array.mean())

3.3 自定义函数

自定义函数是程序员根据业务需求,使用 def 编写的函数。函数的名称、参数、逻辑和返回值都由开发者决定。

def calculate_area(width, height):  return width * height

4. 形参与实参

4.1 基本概念

• 形参(形式参数):定义函数时,写在括号中的变量,相当于等待接收数据的占位符。

• 实参(实际参数):调用函数时,真正传入的值。

def add(a, b):       # a、b 是形参  return a + bresult = add(10, 20)  # 10、20 是实参print(result)

形参通常只在函数内部有效。函数每调用一次,形参都会接收本次调用传入的实参。

4.2 Python 参数不固定类型

Python 是动态类型语言。形参本身不会限制实参类型,真正能否运行取决于函数内部操作是否支持该类型。

def add(a, b):  print(type(a), type(b))  return a + bprint(add(1, 2))              # 3print(add(1.5, 2.5))          # 4.0print(add("hello", "world"))  # helloworld

如果传入不兼容的类型,函数会在执行相应操作时出错:

# 运行到 1 + "2" 时抛出 TypeError# print(add(1, "2"))

最新文章

随机文章