函数的参数组合

Posted Python++

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数的参数组合相关的知识,希望对你有一定的参考价值。

一。 必选参数:必须传入的参数

二。默认参数:不传入取默认值,传入则覆盖,必须指向不变对象

>>> def my_fun(a,b=[2,]):
...     b.append(5)
...     print a=,a,b=,b
... 
>>> my_fun(1)
a= 1 b= [2, 5]
>>> my_fun(1)
a= 1 b= [2, 5, 5]
>>> my_fun(1)
a= 1 b= [2, 5, 5, 5]
>>> 

三。可变参数:

>>> def my_fun(*a):
...     print a
... 
>>> my_fun(1,2,3)
(1, 2, 3)
>>>

    参数 a 接收到是一个tuple

    也可以传入tuple和List

>>> def my_fun(*a):
...     print a
... 
>>> b = [4,5,6]
>>> my_fun(*b)
(4, 5, 6)
>>> my_fun(b)
([4, 5, 6],)
>>> my_fun(1)
(1,)
>>>

  区别传入*b 和 b

四。关键字参数

     

>>> def my_fun(**a):
...     print a
... 
>>> b = {city:Beijing,job:Engineer}
>>> my_fun(**b)
{city: Beijing, job: Engineer}
>>> my_fun(city = Beijing,job = Engineer)
{city: Beijing, job: Engineer}
>>>

   a 接收一个dict

五。参数组合

     参数组合按左往右适配 必选参数 默认参数 可变参数 关键字参数

六。参考:

https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001374738449338c8a122a7f2e047899fc162f4a7205ea3000

以上是关于函数的参数组合的主要内容,如果未能解决你的问题,请参考以下文章

构造函数具有大量参数的颤振组合

有没有办法将2个非常相似的代码片段组合成一个函数并重复?

为啥我不能用相同的参数类型组合两个不同的函数?

JavaScript 代码片段

48个值得掌握的JavaScript代码片段(上)

一个函数应该返回什么可以失败?