函数中的参数说明

 

#定义默认参数
#定义默认参数为空
def plus(l=None):
    if l is None:
        l = []
    l.append('last')
    return l

 

#可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple
def nn(*nums):
  for n in nums:
    print n

####
执行函数的时候,可以输入任意个参数
执行:nn(9)
执行:nn(range(1,4))

c=[8,9,10]
执行:nn(c),返回[8,9,10]
#在list或tuple前面加一个*号,把list或tuple的元素变成可变参数传进去
执行:nn(*c),返回8,9,10

 

#关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict
def pp(name,age,**infors):
  print 'name:',name,'age:',age,'others:',infors

执行:pp('lily',20) 
返回:name: lily age: 20 others: {}

执行:pp('lily',20,gender='femail',city='Beijing') 
返回:name: lily age: 20 others: {'gender': 'femail', 'city': 'Beijing'}

执行:infors = {'city': 'Beijing', 'job': 'Engineer'}
      pp('lily',20,**infors)
返回:name: lily age: 20 others: {'city': 'Beijing', 'job': 'Engineer'}

 在Python中定义函数,可以用必选参数、默认参数、可变参数和关键字参数,这4种参数都可以一起使用,或者只用其中某些,但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数。

参考:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001374738449338c8a122a7f2e047899fc162f4a7205ea3000

posted on 2016-01-06 14:19  momingliu11  阅读(452)  评论(0编辑  收藏  举报