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 函数。
原文地址:https://www.cnblogs.com/lvlisn/p/15121891.html