Python 中用def定义函数,是Python中定义函数的一种方式。
一、函数的定义和调用
Python中定义函数使用def语句,def语句的一般形式如下:
def function_name(parameters):
"""函数文档字符串"""
function_suite
return [expression]1. function_name:函数名,函数名和参数列表一起构成了函数签名。
2. parameters:参数列表,放置在括号中间,多个参数之间使用逗号隔开。
3. 函数内部:函数体,实现函数的功能。
4. return [expression]:函数的返回值,可以省略。
在调用函数时,直接以函数名传递参数值即可:
def print_hello():
print("Hello")
print_hello()输出结果为:
Hello
二、函数的参数
Python函数的参数可以有默认值,也可以指定函数调用时传递的形参位置:
def print_info(name, age=18):
print("Name: ", name)
print("Age : ", age)
print_info("Lucy")输出结果为:
Name: Lucy Age : 18
如果不指定age的值,那么就会默认为18.在调用方法时,也可以指定传递的参数:
print_info("Lucy", 20)输出结果为:
Name: Lucy Age : 20
三、匿名函数(lambda函数)
匿名函数是通过lambda表达式创建的函数,常用于函数作为参数传递的场景:
def get_sum(num1, num2, plus):
return plus(num1, num2)
result = get_sum(10, 20, lambda x, y: x + y)
print(result)输出结果为:
30
四、递归函数
递归函数是指在函数定义中调用自身的函数,常用于处理具有递归结构的数据:
def factorial(n):
"""递归函数求阶乘"""
if n == 1:
return 1
else:
return n * factorial(n-1)
result = factorial(5)
print(result)输出结果为:
120
五、闭包
闭包是指一个函数内部定义的函数,并且可以访问外部函数的变量,常用于封装变量、实现装饰器等场景:
def outer_func(x):
def inner_func(y):
return x + y
return inner_func
f = outer_func(10)
result = f(20)
print(result)输出结果为:
30
原创文章,作者:PISCI,如若转载,请注明出处:https://www.506064.com/n/374004.html
微信扫一扫
支付宝扫一扫