python函数介绍,,1.函数定义与调用函


1.函数定义与调用

函数是为了实现特定功能而封装起来的一组语句块,可以被用户调用

使用函数可以降低编程难度,将大问题分解成若干小问题;实现代码重用,函数可被多次调用

格式:

def 函数名(参数列表):

函数体

函数名(参数列表)

y=0为默认参数,不传y值则y=0

deffunc(x,y=0):printx,yfunc(1)func(1,2)

>>>

1 0

1 2

>>>


2.局部变量和全局变量

局部变量是函数内部定义,仅在函数内有效

i=‘before‘deffunc():i=‘after‘printifunc()printi

>>>

after

before

>>>

全局变量在函数外部定义,可以被其他程序段调用

函数内部通过global可以强制定义全局变量,当函数调用时全局变量生效

i=‘before‘deffunc():globalii=‘after‘printifunc()printi

>>>

after

after

>>>


3.函数返回值return

可以返回任意数据类型,默认为None

执行完return,函数退出

注意区分return和print

deffunc(x,y,z):ifz==‘+‘:returnx+yelifz==‘-‘:returnx-yprintfunc(5,2,‘+‘)

>>>

7

>>>

deffunc(x,y,z):ifz==‘+‘:printx+yelifz==‘-‘:printx-yprintfunc(5,2,‘+‘)

>>>

7

None

>>>


4.参数名赋值

deffunc(x,y,z=0):printx,y,zfunc(1,2)func(y=22,x=11,z=3)

>>>

1 2 0

11 22 3

>>>


5.字典赋值和冗余参数

deffunc(name,age):printname,agea={‘name‘:‘zhzhgo‘,‘age‘:25}func(**a)

>>>

zhzhgo 25

>>>

deffunc(x,*args):printx,argsfunc(1,2,3,4)

>>>

1 (2, 3, 4)

>>>

deffunc(x,*args,**kw):printx,args,kwfunc(1,2,3,4)func(1,2,3,4,y=5,z=6)

>>>

1 (2, 3, 4) {}

1 (2, 3, 4) {‘y‘: 5, ‘z‘: 6}

>>>


6.__main__函数

加上if __name__==‘__main__‘:之后被其他程序import的时候就不会被执行了


7.lambda函数(匿名函数)

lambda函数是一种快速单行定义函数的方法,使代码更简洁,避免了不必要的函数体定义


func(x,y):

return x*y

与上面正常函数等价的写法

func=lambda x,y:x*y

举例:阶乘实现

reduce((lambda x,y:x*y),range(1,5))



本文出自 “今日的努力,明日的成功!” 博客,请务必保留此出处http://zhzhgo.blog.51cto.com/10497096/1673943

python函数介绍

评论关闭