1、为什么要使用函数
(1)降低编程难度:将复杂的问题分解成简单的小问题
(2)代码重用
2、函数的定义
def 函数名(参数列表):#可以没有参数
函数体
3、函数缺省参数(默认参数):设置默认参数是自右向左(右边的为默认,左边为空;不能是左边默认,右边为空)
def machine(x,y='奶油'):
print "制作出一个",x,"元",y,"口味冰淇淋!"
machine(5,"巧克力")
machine(5)
machine(y="巧克力")
4、局部变量与全局变量
可以在函数内部定义全局变量,方法 grobal x,这样声明的变量在函数之外也可以用,但前提是要调用该函数
5、将元组t作为函数参数进行传递,要想获得元组中的单个值,传递的形式为*t
将字典d作为函数参数进行传递,要想获得元组中的单个值,传递的形式为**t
例1:
t=("name","milo")
def fun(x,y):
print "%s : %s" % (x,y)
fun(*t)
例2:
d={name:"zs",age:20}
def fun(name="slh",age=20):
print "name=%s" % name
print "age=%s" % age
fun(**d) #函数的调用,字典中的key和函数中的形参有对应关系才可以这样写
6、处理多余实参(冗余参数)
例1:
def f(x,*args):
print x
print args
f(1,2,3)
#结果
#
#(2,3)
例2:
def f(x,*args,**kwargs):
print x
print args
print kwargs
f(1,2,3,4,5,6)
#结果
#
#(2,3,4,5,6)
#{}
f(x=1,y=2)
#结果
#
#()
#{'y':2}