当大量的代码重复使用的时候,可以使用函数
函数的作用:提升了代码的简洁性、对功能 代码进行封装,提升了代码的重用性以及可可读性
例如定义一个函数:
def show()
```
def 这个关键字,python解释器遇到这一行就默认不执行,只是把这个函数放在内容里面,名字就是函数名show。只用调用的时候才执行。
show()-->调用函数
f = show #将show赋值给f,f的指向的地址和show相同,所以可以直接调用f来执行show函数
f() <==>show()
函数的返回值:
return;
注意:
1.如果函数中没有注明return,函数依旧有返回值,返回值为None
2.函数中遇到return,就自动终止函数,不执行return后面的代码语句
函数的参数:
形式参数与实际参数
形式参数:定义函数的时候定义的参数;def show(user):#user就是形式参数
实际参数:执行函数的时候传入的实际参数,show(‘jam’)#jam就是实际参数,对应的是定义函数时候的user
1.函数的普通参数
2.函数的默认参数
3.函数的动态参数
带一个*的,接收参数返回元组的类型
带两个*的,接受参数返回字典的类型
def show(*args,**kwargs):接收什么都能执行。注意:*的参数必须放在前面,**的参数放在后面。实参传入方式也一样
def show(*args,**kwargs):
print (args,type(args))
print (kwargs,type(kwargs))
show(11,22,3,n1 = 15,n2=‘adf‘)
def show(*args,**kwargs):
print (args,type(args))
print (kwargs,type(kwargs))
l = [11,33,44]
d = {‘n1‘:1,‘n2‘:26}
show(l,d)
show(*l,**d)
s1 = ‘{0} and {1}‘
l = [‘jam‘,‘nina‘]
#result = s1.format(‘jam‘,‘nina‘)
result = s1.format(*l)
print(result)
s2 = ‘{name} is {sex}‘
d ={‘name‘:‘jam‘,‘sex‘:‘m‘}
#re1 = s2.format(name=‘jam‘,sex=‘M‘)
re1 = s2.format(**d)
print (re1)
简单函数:lambda表达式
对于简单的函数一行代码就可以执行
例:
func = lambda a:a+1
print (func(99))
原文:http://www.cnblogs.com/jamchen/p/6422156.html