zoukankan      html  css  js  c++  java
  • 函数中的参数说明

    #定义默认参数
    #定义默认参数为空
    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

  • 相关阅读:
    树链剖分
    后缀自动机
    莫队算法。
    线性递推BM模板
    笛卡尔积
    2019牛客暑期多校训练营(第三场) J LRU management 模拟链表操作
    线性基
    bitset 位运算
    Lindström–Gessel–Viennot lemma定理 行列式板子
    三角形
  • 原文地址:https://www.cnblogs.com/dreamer-fish/p/5105424.html
Copyright © 2011-2022 走看看