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