一、函数的定义
在Python中,函数是一段可重复使用的代码块,用于完成特定的任务。可以使用def关键字来定义函数。
语法如下:
def function_name(parameters):
"""docstring"""
# function body
return expression
- function_name :函数的名称,遵循变量命名规则。
- parameters :参数列表,可以为空,也可以包含多个参数,参数之间用逗号分隔。
- docstring :文档字符串,用于描述函数的功能和用法,可以在函数内部的第一行使用三引号括起来。
- function body :函数体,包含实现函数功能的代码。
- return expression :返回值,可以为空,也可以返回一个或多个值。
示例:
def add_numbers(a, b):
"""Add two numbers and return the result."""
return a + b
二、函数的调用
定义好函数后,可以通过函数名和参数来调用函数。
示例:
result = add_numbers(3, 5)
print(result) # 8
三、参数传递
1. 位置参数
按照参数的位置顺序传递参数。
示例:
def greet(name, age):
print(f"Hello, {name}! You are {age} years old.")
greet("Alice", 25)
2. 关键字参数
通过参数名来传递参数,可以不按照参数的位置顺序。
示例:
greet(age=30, name="Bob")
3. 默认参数
在函数定义时为参数指定默认值,如果调用函数时没有传递该参数,则使用默认值。
示例:
def greet(name, age=18):
print(f"Hello, {name}! You are {age} years old.")
greet("Charlie")
4. 可变参数
- *args :接收任意数量的位置参数,将它们打包成一个元组。
- **kwargs :接收任意数量的关键字参数,将它们打包成一个字典。
示例:
def print_args(*args, **kwargs):
print("Positional arguments:", args)
print("Keyword arguments:", kwargs)
print_args(1, 2, 3, a=4, b=5)
四、函数的返回值
函数可以返回一个或多个值,使用return语句返回值。如果没有指定返回值,则函数返回None 。
示例:
def divide(a, b):
if b == 0:
return None
else:
return a / b
result = divide(10, 2)
if result is None:
print("Division by zero is not allowed.")
else:
print(result)
函数是Python编程中的重要组成部分,合理使用函数可以提高代码的可读性、可维护性和可扩展性。