Linux自动化运维——Python(4)(Python中函数的调用及Python中形参,实参,必选参数,默认参数,可变参数,关键字参数的区别)
程序员文章站
2022-03-17 14:02:22
...
Linux自动化运维——Python(4)(函数 形参,实参,必选,默认,可变,关键字参数)
1.定义函数
1).函数输入(参数):num1,num2
2) 函数的输出(返回值):num1,num2
3) 定义函数下面“”写的信息是函数的帮助文档
4)num1:int 告诉读代码的用户,num1需要要传的值是int 如果不是也不会报错
2.调用函数函数名(形参),调用函数时的参数,实参。一般实参要和形参一一对应 形参是形式参数,可以任意更改
#定义函数
def max_num(num1:int,num2:int)->int:
max = num1 if num1 > num2 else num2
return max
#print(help(max_num))
max_num(10,20)
#创建一个空函数
def login(username,passwd):
pass
#函数的调用
result= max_num(12,23)
print(result)
3.函数中参数
(1)必选参数:必须传递的参数
(2)默认参数:如果没有传递参数,使用默认值,如果传递了参数 使用传递的参数
(3)可变参数“用户传递的参数个数可以变化的参数,一般情况下 *args 数据以元组的tuple的方式存储
(4)关键字参数:用户传递参数个数可以是多个 并且每个参数需要两个信息(key-value) 一般情况下 用**kwargs表示 数据以dict的方式存储
可变参数举例
1 #!/usr/bin/python3
2 """
3 def enroll(name,**kwargs):
4 print(name)
5 print(kwargs)
6 enroll("westos",ages=10,city="xi'an")
关键参数举例
9 def sum_num(*args):
10 print("args:",args)
11 print("arges type:",type(args))
12 return sum(args)
13 result = sum_num(10,20,2,32)
14 print(result)
15 """
4.匿名函数
无需使用def来命名的函数 用到关键字lambda
#求最大值的匿名函数
max_num = lambda num1, num2: num1 if num1 > num2 else num2
#求和的匿名函数
sum_num = lanbda num1, num2:num1 + num2
#求多个数和的匿名函数
sum_many_num + lambad *args:sum(args)
调用
result = max_num(10,20)
print(result)
5.递归函数
下一篇: 曹丕和曹睿身为皇帝 两人到底谁的能力更强