python 函数,,函数是一个通用的程序
python 函数,,函数是一个通用的程序
函数是一个通用的程序结构部件,是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
定义一个简单的函数:
>>> def test(a): #创建一个函数,函数名是test。for i in a: print(i)>>> test((1,2,3,4,5)) #使用test()调用函数,同时往里面传一个参数(元组)。12345>>> test([‘a‘,‘b‘,‘c‘,‘d‘]) #使用test()调用函数,往里面传一个参数(列表)。abcd
参数形式:
不传参数
>>> def fun1(): #定义一个不传参的函数。 print(‘不能传参数:‘) for i in range(1,10): print(i) >>> fun1() #调用函数。不能传参数:123456789>>> fun1(‘a‘) #传一个参数,结果会报错。Traceback (most recent call last): File "<pyshell#4>", line 1, in <module> fun1(‘a‘)TypeError: fun1() takes 0 positional arguments but 1 was given>>>
必备参数
>>> def fun2(a): #这个函数必须传参数 print(‘必须传参数:‘) for i in range (2,a): print(i) >>> fun2(8) #调用函数,并且传一个参数。函数里面的range(2,a),传入参数 ‘8‘,就变成了range(2,8)必须传参数:234567>>>
默认参数。
>>> def fun2(a=6): #定义一个可选参数的函数,因为参数默认有值。 print(‘默认参数:‘) for i in range (2,a): print(i) >>> fun2() #调用函数,没有传参数。默认参数:2345>>> fun2(8) #因为是可选参数的函数,所以也可以定义一个参数。默认参数:234567>>> fun2(a=12) #也可以使用 “a=12” 这种方式传参数。默认参数:234567891011>>>
可选参数
def fun4(*arg),这里重要的是 " * 号 ",后边的arg只是一个约定俗成的名称。注意:调用函数时也可以添加“* 号”这样可以对参数进行 “解包”
>>> def fun4(*arg): #有 “* 号” 开始的参数,意味着可以在这个函数里传多个或者0个参数。print(‘可传0个或者多个参数:‘,arg)>>> fun4() #调用函数,不传参数可传0个或者多个参数: ()>>> fun4(1)可传0个或者多个参数: (1,) #(1,)证明是元组,因为元素1后边有个 ‘,号‘>>> fun4(1,‘a‘)可传0个或者多个参数: (1, ‘a‘) # #传多个参数>>> fun4(1,{‘a‘:1})
可传0个或者多个参数: (1, {‘a‘: 1})
>>> fun4(1,*{‘a‘:1}) #这里调用函数时,在其中一个字典参数前面添加了一个 "* 号"(*{‘a‘:1}),这个"* 号"把里面的壳去掉,结果指输出字典的 “键”
可传0个或者多个参数: (1, ‘a‘)
>>> fun4(1,[‘a‘,1])
可传0个或者多个参数: (1, [‘a‘, 1])
>>> fun4(1,*[‘a‘,1]) #这使用"* 号"把列表里面的壳去掉(解包)。
可传0个或者多个参数: (1, ‘a‘, 1)
python 函数
评论关闭