【课程16】Python再识函数

变量的作用域:

1、全局变量-同一个文件中所有代码可用

2、局部变量-函数内部里面

注意点:gl0bal x在函数内容修改全局变量。

缺省参数:

1、在输入情况下,不给形参赋值,即形参为缺省参数

def addsum(start =1 ,end = 100,step = 1):
i = start
sumData = 0
while i <= end:
sumData += i
i += step
return sumData
print(addsum())
注意:缺省参数一定要在必填后面

可变数量参数:

alist = [1,5,7,9]
def addSum(*inList):#可变数量参数“*”,在函数定义的时候起封装的效果
sumData = 0
for one in inList:
sumData += one
return sumData
print(addSum(1,2,3,4,5,6))
print(addSum(*alist))#展开元素

关键字可变参数:

dict1 = {'name':'tom'}
dict2 = {'name':'tom',2:100}
def func(a,*b,c = 2,**d):#关键字参数
print(a,b,c,d)
func(1,2,3,4,5,6)
func(1,2,3,4,5,6,name = 'tom',age = 18)
func(1,2,3,4,5,6,**dict1)#传字典时需要展开,且仅能传字典,不能传列表
func(1,2,3,4,5,6,**dict2)#传字典时需要展开,展开后显示为int形式报错,定义时尽量用字符串
#TypeError: func() keywords must be strings

注意:必填>可缺省>*可变数量>**关键字可变参数

def func(a,*c,b=2):
print(a,b,c)
func(1,2,3,4,5,b = 10)#b值给值一定要带b
def func(a,b=2,*c):
print(a,b,c)
func(1,2,3,4,5)#b值一定要给b,但是不能用b=


 


posted @ 2019-01-13 11:43  万骨枯  阅读(201)  评论(0编辑  收藏  举报