zoukankan      html  css  js  c++  java
  • python基础学习3(函数)

    函数:

    def 函数名(参数列表):

        函数体

    函数默认返回值为None

    向函数传元组和字典:

    fun(*args)//传元组,需要一一对应

    fun(**args)//传字典,需要一一对应

    处理多余参数:

    def fun(*args,**args)

    1 #!/usr/bin/python
    2 def fun(x,*args,**dargs):
    3     print x
    4     print args
    5     print dargs
    6 fun(1,2,3,4,5,y=20,z=30)
    7 输出:1
    8     (2,3,4,5)
    9     {y:20,z:30}

    lambda表达式:

    def fun(x,y):

        print x*y

    对应的lambda表达式为:g = lambda x,y:x*y//冒号前是参数,冒号后是返回值,整个lambda表达式返回一个函数对象

    lambda的应用——阶乘:

    01 #!/usr/bin/python
    02 l=range(1,6)
    03  
    04 def f(x,y):
    05     return x*y
    06  
    07 reduce(f,l)//返回120,将1*2赋给x,再将3赋给y……
    08  
    09 对应lambda表达式:reduce(lambda x,y:x*y,range(1,6))
    10  
    11 def f(n):
    12     if n>0:
    13          return n*f(n-1)

    python没有switch语句,但是可以使用字典和函数结合来实现

     

    上面等价于:{1:case1,2:case2}.get(x,lambda *args,**dargs:)()

    来源:http://my.oschina.net/chape/blog/123510

  • 相关阅读:
    使用SpringAOP
    Alpha 冲刺 (5/10)
    Alpha 冲刺 (4/10)
    Alpha 冲刺 (3/10)
    Alpha 冲刺 (2/10)
    Alpha 冲刺 (1/10)
    项目需求分析答辩总结
    项目UML设计(团队)
    项目选题报告答辩总结
    第七次作业--项目需求分析
  • 原文地址:https://www.cnblogs.com/94julia/p/3052478.html
Copyright © 2011-2022 走看看