码迷,mamicode.com
首页 > 其他好文 > 详细

嵌套函数和作用域和匿名函数

时间:2018-06-02 00:46:16      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:div   return   dex   ret   变量   nbsp   需要   执行   就是   

#嵌套函数
def func1():
    print(alex)
    def func2():
        print(eric)
    func2()
func1()
#===>1、函数内部可以再次定义函数。2、执行需要被调用

age = 19
def func1():
    print(age)
    def func2():
        print(age)
    func2() #==>19
func1()  #==》19
#由内而外调用直
age = 19
def func1():
    print(age)
    def func2():
        age = 99
        print(age)
    func2() #==>99
func1()  #==》19
#内部有值,先调用内部的


作用域:
#作用域
#在Python中,函数就是一个作用域{JaveScript},局部变量放置在其作用域中
#C# Jave中作用域{}
#代码定义完成后,作用域已经生成,作用域链向上查找
age = 18
def func1():
    age = 73
    def func2():
        age=19
        print(age)
    return func2
val = func1()
print(val)
val()

匿名函数:
#匿名函数

# def func(x,y):
#     if x>y:
#         return x*y #普通函数
#     else:
#         return x/y
# print(func(3,8))
#
# a = lambda x,y:x*y if x>y else x/y#声明一个匿名函数
# print(a)
# print(a(3,8))


data = list(range(10))
print(data)
for index,i in enumerate (data):
    data[index] = i*i
print (data)

# def f2(n):
#     return n*n
print(list(map(lambda x:x*x,data))) #用匿名函数就节省了代码

#1,节省代码量
#2,看着高级

 

 

 

 

嵌套函数和作用域和匿名函数

标签:div   return   dex   ret   变量   nbsp   需要   执行   就是   

原文地址:https://www.cnblogs.com/davidz/p/9124017.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!