下面是关于Python函数声明的完整攻略:
1. 函数声明的语法
定义一个Python函数需要使用def
关键字,其语法如下:
def function_name(parameters):
"""
Function Docstring
"""
statements
其中,function_name
是函数名称,parameters
是函数参数接收的输入,可以是多个参数,中间通过逗号分隔。函数名称和参数列表之间需要用括号()
隔开,函数的主体语句需要缩进,通常是四个空格或一个制表符。
函数声明的第一行中也可以包含如下内容:
*args
和**kwargs
,可以用于接收任意数量和任意类型的参数,比如不确定用户输入时的场景;- 参数的默认值:在函数定义中给参数指定默认值,比如
def foo(a, b=0)
表示b的默认值是0;
函数声明的第一行以下还可以包含函数的文档字符串,即函数的参数、返回值、用法等说明,用三个引号""" """
包裹:
def add(x, y):
"""
将两个数相加并返回结果。
:param x: 第一个数
:param y: 第二个数
:return: 两个数的和
"""
return x + y
2. 函数的调用
定义好函数之后,我们就可以在程序中调用它。调用函数时,需要使用函数名和参数列表,参数列表中的参数需要和函数定义中的参数一一对应,如下所示:
# 调用add函数
result = add(3, 5)
print(result) # 8
示例代码
下面是两个利用Python函数声明实现的例子:
例子1:计算斐波那契数列值
def fibonacci(n):
"""
计算斐波那契数列的第n项值。
:param n: 斐波那契数列的项数
:return: 第n项的值
"""
if n < 1:
return 0
elif n == 1 or n == 2:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
# 计算斐波那契数列第10项的值
result = fibonacci(10)
print(result) # 55
例子2:计算列表中的最大值
def max_num(list):
"""
计算列表中的最大值。
:param list: 列表
:return: 最大值
"""
max = list[0]
for item in list:
if item > max:
max = item
return max
# 计算列表[1, 4, 7, 2, 9, 5]中的最大值
result = max_num([1, 4, 7, 2, 9, 5])
print(result) # 9
希望以上内容能够帮助你更好地理解Python函数的声明和使用。