zoukankan      html  css  js  c++  java
  • python 中的函数

    创建函数

    在 Python 中,使用 def 关键字定义函数:

    #def  关键字 定义函数
    #创建函数
    def my_function(name):
        print(name+'hello world')
    
    #执行函数
    my_function('name ')#name hello world
    
    
    
    #默认参数 如果我们调用了不带参数的函数,则使用默认值:
    def you_funtion(city="beijin"):
        print('i am from '+city)
    
    you_funtion()#i am from beijin
    
    #您发送到函数的参数可以是任何数据类型(字符串、数字、列表、字典等),并且在函数内其将被视为相同数据类型。
    def del_function(list):
        for x in list:
            print(x)
    
    del_function(['happy','every','dady'])#
    
    
    #返回值
    #如需使函数返回值,请使用 return 语句:
    def demo(name):
        return  name;
    
    Name=demo('miaomiao')
    print(Name)#miaomiao
    
    
    #关键字参数(在 Python 文档中,“关键字参数”一词通常简称为 kwargs。)  您还可以使用 key = value 语法发送参数。(参数的顺序无关紧要)
    def demo1(child1,child2,child3):
        print('i am '+child3+child1+child2)
    
    demo1('A','B','C')
    
    
    #任意参数
    #如果参数数目未知,请在参数名前添加*
    def demo2(*kids):
        print(kids[3])
    
    demo2('i','am','chinese','you','get','out')#you
    
    #pass语句
    #函数定义不能为空,但是如果您出于某种原因写了无内容的函数定义,请使用 pass 语句来避免错误。
    def demo3():
        pass
    
    #递归函数
    '''
    Python 也接受函数递归,这意味着定义的函数能够调用自身。
    
    递归是一种常见的数学和编程概念。它意味着函数调用自身。这样做的好处是可以循环访问数据以达成结果。
    
    开发人员应该非常小心递归,因为它可以很容易地编写一个永不终止的,或者使用过量内存或处理器能力的函数。但是,在被正确编写后,递归可能是一种非常有效且数学上优雅的编程方法。
    
    在这个例子中,tri_recursion() 是我们定义为调用自身 ("recurse") 的函数。我们使用 k 变量作为数据,每次递归时递减(-1)。当条件不大于 0 时(比如当它为 0 时),递归结束。
    
    对于新的开发人员来说,可能需要一些时间来搞清楚其工作原理,最好的方法是测试并修改它。
    
    '''
    
    #例子
    def demo5(k):
        if(k>0):
            result=k+demo5(k-1)
        else:
            result=0
        return result
    
    F=demo5(100)
    print(F)#5050

    lambda  函数是一种小的匿名函数。

    #lambda 函数是一种小的匿名函数。
    #lambda 函数可接受任意数量的参数,但只能有一个表达式。
    
    #语法:lambda arguments : expression 
    #执行表达式并返回结果:
    
    x=lambda a:a+10
    print(x(5))#15
    
    #使用该函数定义来创建一个总是使所发送数字加倍的函数:
    def demo6(n):
        return lambda a:a*n
    mydemo=demo6(9)
    print(mydemo(11))#99
    
    #或者,在同一程序中使用相同的函数定义来生成两个函数:
    mydoble=demo6(2)
    myfloat=demo6(8)
    print(mydoble(11))#22
    print(myfloat(10))#80
    
    #如果在短时间内需要匿名函数,请使用 lambda 函数。
  • 相关阅读:
    C# 3.0新特性
    WinForm上显示gif动画
    Sql Server中Case函数的使用(上篇)转载
    Jquery的$命名冲突:
    Sql Server中case函数的使用(下篇) 转载
    hdu 2544 2066 1874 2680
    伤感!
    hdu 1999 不可摸数
    hdu 1878欧拉回路
    hdu 2767
  • 原文地址:https://www.cnblogs.com/lvlisn/p/15121891.html
Copyright © 2011-2022 走看看