Python基础——函数
1. 函数的定义和调用
1.1 形参与实参
Python中函数的定义语法一般为:
def func_name(arg1, arg2, arg3):
"""docstring"""
operations
return result # 有些函数没有return语句
其中’args’被称为形参,在函数调用的过程中将实参传递给这些形参。函数的调用可以为顺序调用和关键字调用。其中位置调用需要输入的实参与形参保持相同的顺序,而关键字调用则不需要。另外,函数调用可以同时采用关键字调用和顺序调用,但是顺序调用需在关键字调用之前。
result1 = func_name(value1, value2, value3) # 位置调用
result2 = func_name(arg1=value1, arg2=value2, arg3=value3) # 关键字调用
1.2 形参的默认值
另外,在函数定义时可以给函数的形参设定默认值,但是没有默认值的形参要放在有默认知的前面。
def func_name(arg1, arg2, arg3=0):
"""docstring"""
operations
return result # 有些函数没有return语句
这样,在调用时可以给arg3
赋值,也可以不赋值。
result1 = func_name(value1, value2) # 使用arg3默认值
result2 = func_name(arg1=value1, arg2=value2, arg3=value3) # 给arg3赋新值
1.3 任意数量的实参和任意数量的关键字实参
在形参中,使用*args
接受任意数量的形参,而使用**keys
接受任意数量的关键字形参。这样的好处是可以灵活处理参数个数未定的情况。
def func1(*args):
for value in args:
print(value)
def func2(**args):
my_dict = {}
for key, value in args.items():
print(key, value)
func1('You', 'Are', 'My', 'Little', 'Panda', 'Bear')
func2(First='Joey', Last='Mao')
运行结果为:
You
Are
My
Little
Panda
Bear
First Joey
Last Mao