几种不同的传递参数方式

  Python为我们提供了几种不同的参数传递方式。以便让我们在不同的场景内使用。由于在学习之前已经掌握别的的编程语言,所以理解起来也是比较容易的。

  而Python的几种传递参数分别是位置参数、默认参数、关键字参数、可变参数


位置参数:

  位置参数就是最常使用的一种方式,也是我在其他编程语言里使用最多的一种方式。位置参数是按照参数的先后顺序进行传入到函数里的。看demo。

  代码来理解普通位置传递的时候,只会按照参数传递进去的位置顺序来进行赋值。

  而假定如果我们把年龄和名字传递的先后顺序搞反了之后调用函数是:

  就如同上面一样,在实际的开发中,我们并不希望把参数传递错误。那么就有了关键字函数。


关键字函数

  还是上面的demo。
  而这次我们是使用键值对的方式来进行调用。调用如下

  值得注意的是,这次调用函数我们是完全颠倒了函数的位置,而结果并没有出错。关键字参数是根据键来进行指定参数的,与顺序无关

  那么当位置参数与关键字参数混合的时候呢?依旧是上面的demo

  上面的报错提示指出了我们的问题所在。位置参数与关键字参数混合的时候,位置参数要在关键字参数的前面。位置参数是按照先后位置进行传递的,而关键字参数是按照key进行传递的。所以关键字参数肯定要让着位置参数。位置参数就要在前面。
设想一下,我们要输入一个班级100个同学的信息,而班级里有100个人,其中99个男的。我们用0代表男。那我们可能要输入99次0.那么我们如果不输入的时候默认就是0,是女的时候我们才输入1.那么就会引入了默认参数


默认参数

以上需要注意,当位置参数和默认参数并存的时候,默认参数放在最后面的位置。


收集参数

  假如如果当我们一次性的需要输入很多名字的时候,如果在函数内定义很多参数就会很麻烦。在别的网站上也有见到称收集参数为解包裹参数的。先看demo:


几种参数混用的情况

   如果混合使用参数,参数的排序规范是(位置参数,tuple类型可变参数,默认参数,字典类型参数)目前不知道关键字参数要塞到哪里😆


相关链接

python的位置参数、默认参数、关键字参数、可变参数区别

分类: python

发表评论

电子邮件地址不会被公开。 必填项已用*标注