20.嵌套,匿名,高阶


# 嵌套
name="python"
def change():
name="python1"
def change2():
name="python2"
print("我是第二层",name)
change2()
print("我是第一层",name)

change()
print("我是最外层",name)


name="python"
def change():
# name="python1"
def change2():
# name="python2"
print("我是第二层",name)
change2()
print("我是第一层",name)

change()
print("我是最外层",name)


# 匿名,只能写简单的三元运算
def calc(x,y):
return x*y
print(calc(3,4))

a=lambda x,y:x*y
print(a(3,4))




def calc(x):
return x**2
res=map(calc,[1,2,3,4,5,6])
print(res)
for i in res:
print(i)


res1=map(lambda x:x**2,[1,2,3,4,5,6])
print(res1)
for i in res1:
print(i )
# 高阶
def get_abs(n): # 取绝对值函数
return int(str(n).strip("-"))
print(get_abs(-9999))
def get_abs1(n):# 取绝对值函数
if n>0:
return n
else:
return -n
print(get_abs1(-9999))

# 把一个函数a当作参数传给一个b函数,b 可以接收函数作为参数,b就是高阶函数,返回另外一个函数,也是高阶函数
def add(x,y,f):
return f(x)+f(y)
print(add(-7,-999,get_abs))
posted @ 2019-09-22 12:36  派森716  阅读(123)  评论(0编辑  收藏  举报