python之函数默认参数及注意点

小码哥编程学习

发布时间:18-06-0417:09

前言

在python中,函数的参数有多种类型,有默认参数、可变参数、关键字参数、命名关键字参数等,本文主要深入讲解默认参数。对于默认参数,其实在功能上就是为了简化函数调用。

默认参数

1、格式

2、说明及注意点

a. 在使用缺省参数后,对于函数的必填参数必须在前,默认参数在后。

b. 默认参数在一个函数中可以有多个。

c. 当一个函数中的某个参数的改动不大,就可以考虑将这个参数设置为默认参数,比如说一个人的民族,这种参数就可以设置为缺省参数。

案例a

小总结:从上图可以看出,对于num2这个参数如果你要传入的参数是100,则可传可不传,都是可以的。这个也是默认参数给我们带来的方便之处。

python中print语句

结论:其实在python中的print语句就是采用了缺省参数。

使用可变类型作为缺省参数

1、代码举例

结论:上图中的程序运行结果是[10],[20], 但是实际上结果是[10],[10,20]。问题的原因主要在于scores的类型是一个列表,本身是一个可变类型,那么对于列表的append方法添加元素的时候并不会对socres进行重新创建一个新的列表,那么也就是说,你两次append元素,其实都是对同一个列表进行操作。

总结

对于默认参数,如果是不可变类型,那么多次对函数的调用是没有问题的。

对于默认参数,如果是可变参数,那么对于参数的传递,就要特别考虑结果是正确性,所以对于这种情况,就必须在调用函数的时候就要重新初始化一次列表。

返回顶部