您的位置:首页 > 编程语言 > Python开发

python函数介绍

2015-07-14 00:08 495 查看
1.函数定义与调用
函数是为了实现特定功能而封装起来的一组语句块,可以被用户调用
使用函数可以降低编程难度,将大问题分解成若干小问题;实现代码重用,函数可被多次调用
格式:
def 函数名(参数列表):
函数体
函数名(参数列表)
y=0为默认参数,不传y值则y=0
def func(x,y=0):
print x,y
func(1)
func(1,2)
>>>
1 0
1 2
>>>

2.局部变量和全局变量
局部变量是函数内部定义,仅在函数内有效
i='before'
def func():
i='after'
print i

func()
print i
>>>
after
before
>>>
全局变量在函数外部定义,可以被其他程序段调用函数内部通过global可以强制定义全局变量,当函数调用时全局变量生效
i='before'
def func():
global i
i='after'
print i

func()
print i
>>>
after
after
>>>

3.函数返回值return
可以返回任意数据类型,默认为None
执行完return,函数退出
注意区分return和print
def func(x,y,z):
if z=='+':
return x+y
elif z=='-':
return x-y

print func(5,2,'+')
>>>
7
>>>
def func(x,y,z):
if z=='+':
print x+y
elif z=='-':
print x-y

print func(5,2,'+')
>>>
7
None
>>>

4.参数名赋值
def func(x,y,z=0):
print x,y,z

func(1,2)
func(y=22,x=11,z=3)
>>>
1 2 0
11 22 3
>>>

5.字典赋值和冗余参数
def func(name,age):
print name,age

a={'name':'zhzhgo','age':25}
func(**a)
>>>
zhzhgo 25
>>>
def func(x,*args):
print x,args

func(1,2,3,4)
>>>
1 (2, 3, 4)
>>>
def func(x,*args,**kw):
print x,args,kw

func(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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: