Python函数中的那些参数的使用

什么是函数参数,快速定义一个函数

所谓参数,就是我们在定义这个函数的时候,可以接收一些“变量”来操作,
比如我们定义一个求和的函数:

1
2
3
4
5
def get_sum(a, b):
sum = a + b
return sum

print(get_sum(3, 4))

7

这里的 a 和 b 就是 get_sum 这个函数的参数,
那么当我们需要求和的时候,只需要将我们要求和的数传进去就行了:
这就是函数中最简单的参数使用。

参数是一个列表

修改列表,传入列表参数

1
2
3
4
5
6
def change_list(list):
list[1] = 'python'

mylist = [1, 2, 3, 4]
change_list(mylist)
print(mylist)

[1, ‘python’, 3, 4]

直接传入列表参数:

1
2
3
4
def change_list(list):
list = [1, 'python', 3, 4]
print(list)
change_list(list = [1, 2, 3, 4])

[1, ‘python’, 3, 4]

1
2
3
4
def change_list(list):
list = [1, 'python', 3, 4]
print(list)
change_list([])

有参数的函数在调用时必须传入参数

调用函数时指定参数名,这样就不用考虑参数的顺序了
如不写参数名,则按函数参数顺序传入

1
2
3
4
5
def print_some(length, age):
print('年龄:', age)
print('长度:', length)

print_some(age=40, length=18)

年龄: 40
长度: 18

参数的一些别样用法

传入多个参数

在参数名称的前面添加星号,表示这个位置的参数可以是多个,
比如这里我们定义可以传入多个 age:

1
2
3
4
5
6
def print_some(length, *age):
print('年龄:', *age)
print(age)
print('长度:', length)

print_some(18, 1, 2, 3, 4, 5, 6, 7, 8)

函数中的参数,如果在前面加一颗星, 那么这个参数可以接收多个,并且最后都转化成元组。

年龄: 1 2 3 4 5 6 7 8
(1, 2, 3, 4, 5, 6, 7, 8)
长度: 18

传入字典参数

如果用两个星的字典参数,在调用的时候必须要用字典的形式写明每个参数
返回结果也是字典形式数据结构

1
2
3
4
5
def print_some(length, **age):
print('年龄:', age)
print('长度:', length)

print_some(length=18, age1=1, age2=2, age3=3, age4=4, age5=5)

年龄: {‘age1’: 1, ‘age2’: 2, ‘age3’: 3, ‘age4’: 4, ‘age5’: 5}
长度: 18