标签:bsp glob 修改 注意 ret print 需要 class 变量定义
一、课程回顾
上节课我们学习了函数的参数,学习了四种传参方式,分别是位置参数、默认参数、可变参数和关键字参数。
二、递归函数
# 在函数内部,可以调用其他函数。如果一个函数在内部调用自身,这个函数就是递归函数。
def foo(num): print(num) if num==1: return foo(num-1) print(num,"=======>") foo(3)
三、高阶函数
# 高阶函数:一个函数可以作为参数传给另外一个函数,或者一个函数的返回值为另外一个函数(若返回值为该函数本身,则为递归),满足其一则为高阶函数。
1.变量可以指向函数,以内置函数abs为例,调用函数时将结果赋值给变量 a=abs(-10) print(a)
2.直接将函数本身赋值给变量 a=abs print(a(-10))
3.一个函数可以接收另一个函数作为参数,这种函数就是高阶函数。
map函数:是Python 内置的高阶函数
# map()包含两个参数,第一个是参数是一个函数,第二个是序列(列表或元组)。其中,函数(即map的第一个参数位置的函数)可以接收一个或多个参数。
案例1:
a=(1,2,3,4,5) b=[1,2,3,4,5] c="Rita" la=map(str,a) lb=map(str,b) lc=map(str,c) print(la) print(lb) print(lc)
案例2:
L = [‘sKY‘, ‘tOM‘, ‘LUKAS‘] def upper_first(s): return s[0].upper() + s[1:].lower() print(map(upper_first, L))
注:upper(),lower()作用
# upper()字符串中字母由小写变为大写 # lower()字符串中字母由大写变为小写
四、变量作用域
# 作用域指的是范围,值得就是作用的的范围,分为以下两种:全局变量和局部变量。 # 全局变量:一般在函数体外定义的变量 # 局部变量:在函数内部定义的变量
全局变量:
num = 100 def func(): x = num + 100 print(x) func() # 结果:200
局部变量:
num = 100 def func(): num = 200 x = num + 100 print(x) func() # 结果:300
注意:使用函数时,变量名既有全局变量也有局部变量,则默认使用局部变量。
global:在局部声明一个名字是来自于全局作用域的,可以用来在局部修改全局的不可变类型。
在函数中将某个变量定义为全局变量时需要使用关键字global。
num = 100 def func(): global num num = 200 print(num) func() print(num) # 结果: # 200 # 200
1111111111
标签:bsp glob 修改 注意 ret print 需要 class 变量定义
原文地址:https://www.cnblogs.com/xiaoxiao-ya/p/11499127.html