python学习笔记第5章:函数

5.1创建函数

def  add(a , b):            函数用def定义,a,b是要传入的参数

c = a + b 

return c return一个值或一个元组,无需返回时可省略

 

add = lambda a,b :  a+b    方法二,无名函数

函数名     参数  返回值

5.2调用/使用函数

print(add(3,5))             调用函数

fun = add              将函数本身赋值给fun,不加括号,fun等于add()

                        函数作为另一个函数的参数使用时,也不加引号

 

 

def sub(a,b):

c = a - b

return c

print( sub(b=2,a=9)  )     使用参数赋值的情况,可以不管参数顺序

 

 

def calc(a,b,c,d):                        

    if a == '和':                  对参数进行判断

        x = b + c + d

        s = '{}+{}+{}={}'.format(b,c,d,x)

    elif a == '积':

        x = b*c*d

        s = '{}*{}*{}={}'.format(b,c,d,x)

    else:

        print('hahh')

    return a+':'+s              用+号作为连接符,

print(calc('和',6,8,10))

 

输出~  和:6+8+10=24

 

5.3使用元组作为参数

def summer(*a):            星号定义参数为元组

 

    sum = 0

    for i in a:

        sum += i

    return sum

print(summer(1,2,3,4,5,6,7,8,9,10))     直接输入元组的值到函数

输出55

 

5.4使用字典作为参数

def pDic(**d):                    两个星号参数引用字典

    for s,t in d.items():        for循环定义两个变量,分别赋值

        print(s,'_',t)          

pDic(a=3,b=5)               用dict()的方式定义字典,省略dict

 

def Pdic(a,b,c):

    print(a,b,c)

d= {'a':20,'b':35,'c':70}       定义字典

Pdic(**d)                      以两个星号引用字典型参数

 

 

 

 

5.5递归函数(将函数作为另一个函数的参数)

def fun(a,b,fun2):             1.定义函数fun,将fun2作为参数

    print(fun2(a,b))           2.调用fun2

 

def fun2(a,b):                 3.定义函数fun2

    return a * b

 

fun(3,5,fun2)                4.计算

 

fun(3,5,lambda a,b :a*b)    3-4 ,代替fun2,相当于合并3,4两步

 

5.6变量作用范围

global a         当在函数内修改一个不可变类型的全局变量a时,要声明a是全局变量,否则函数会创建一个局部变量a并赋值。字典和列表类型不用

nonlocal  a      同上(声明非本地变量

 

 

5.7系统函数

 

zip

for i in zip(列表a,列表b):

print(i)

(a1,b1)

(a2,b2)

 

for i,j in zip(列表a,列表b):

print(i,j)

a1 b1

a2 b2

 

map

 

map(函数,列表等)   把列表里的值依次传输到函数中相当于

 

for i in 列表:

  函数(i)

 

 

sum,max,min

 

max(list1)   获得列表list1中的最大值

sum(list1)   对列表list1求和

sum(list1,list2) 对列表list1和list2求和

 

isdigit()

if  a.isdigit()        #判断字符是否为数字

上一篇:20210921-JavaScript-变量和函数的提前加载


下一篇:Python中的内部函数和闭包