内容正文:
49 Python函数的
参数
一、什么是函数的参数?
在 Python 中,函数的参数是用于向函数传递值或数据的变量。函数可以通过参数接收外部的数据,并在函数内部使用这些数据进行操作。
函数传参:在调用函数时,大多数情况下,主调函数和被调函用之间有数据传递关系,这就是有参数的函数形式。函数参数的作用是传递数据给函数使用,函数利用接收的数据进行具体的操作处理。
二、Python函数参数的分类:
Python函数参数分为:
位置参数、默认参数、关键字参数、可变参数等。
①位置参数
位置参数(Positional Arguments):这是最常见的参数类型,调用函数时按照定义的顺序传递参数。
根据函数定义的参数位置来传递参数,要求传递的参数与函数定义的参数两者一一对应
如果 “传递的参数个数” 不等于 “函数定义的参数个数”,运行时会报错
在Python中,f""是一种字符串格式化的方式,被称为f-string。使用f-string可以在字符串中插入变量或表达式的值,使得字符串的构建更加简洁和直观
②默认参数
默认参数(Default Arguments):在定义函数时,可以为某些参数指定默认值。如果在调用函数时没有为这些参数传递值,那么将会使用默认值。
默认值参数必须出现在函数参数列表的最右端,任何一个默认值参数右边不能有非默认值参数
③关键字参数
关键字参数(Keyword Arguments):在函数调用时,通过参数名指定参数的值。这样做可以不考虑参数的顺序。
关键字参数
关键字传参是指使用形参的名字来确定输入的参数。通过该方式指定实参时,不需要与形参位置一致,只要参数名称写正确即可。
④可变参数
在 Python 中,可变参数允许函数接收任意数量的位置参数或关键字参数。这使得函数更加灵活,可以处理各种不同的情况。
要定义一个可变参数,可以使用星号(*)或双星号(**)作为参数的开头。
可变位置参数:使用一个星号(*args)作为参数的开头,将该参数作为一个元组传递给函数。例如:
def func(*args):
for arg in args:
print(arg)
这个函数可以接受任意数量的位置参数,并将它们打印出来。例如:
func(1, 2, 3) # 输出:1 2 3
func(4, 5, 6, 7) # 输出:4 5 6 7
可变关键字参数:使用双星号(**kwargs)作为参数的开头,将该参数作为一个字典传递给函数。例如:
def func(**kwargs):
for key, value in kwargs.items():
print(key, value)
这个函数可以接受任意数量的关键字参数,并将它们的键和值打印出来。例如:
func(a=1, b=2) # 输出:a 1 b 2
func(c=3, d=4, e=5) # 输出:c 3 d 4 e 5
需要注意的是,可变参数必须在其他固定参数之后定义。另外,一个函数中只能有一个可变位置参数和一个可变关键字参数。
$$