匿名函数

# # if True:
# #     name='xiaoming'
# # print(name)
# #没有块级作用域
# # def test():
# #     a=10
# # test()
# # print(a)
# # 局部变量:在函数内部定义的变量,只能在函数内部使用
# # print(a)
# # 全局变量:定义在函数外部的变量,拥有全局的作用
#
#
# #num全局变量
# # num = 10
# # def show():
# #     # 函数内部可以使用外部定义的变量
# #     # print(num)
# #     # 若想更改外部变量,需要进行global声明
# #     global num
# #
# #     # 不能更改外部的全局变量,而是定义了一个局部变量
# #     num = 20
# #     print(num)
# #
# #
# # show()
# # print(num)
#
#
# #多在嵌套函数中使用
# def outnum():
#     n = 100
#     def nei():
#         # 使用外部函数的局部变量,需要进行声明才可更改
#         nonlocal n
#         # 内部函数可以使用外部函数的局部变量,但是不能更改
#         n = 200
#         print(n)
#     nei()
#     print(n)
# outnum()

def test():
    print('你的世界我不懂')

#
# # print(test.__name__)#打印函数名字
# # 函数可以像普通变量一样进行赋值
# a=test
#
# print(a.__name__)
# a()

# def show(func):
#     func()
# # 函数作为参数传递
# show(test)

# def add(a,b):
#     return a+b
#
# def sub(a,b):
#     return a-b
#
# def calc(a, b, yunsuan):
#     return yunsuan(a, b)
#
#
# print(calc(3,5,add))
# print(calc(3,5,sub))
# #lambda匿名函数
# print(calc(3,5,lambda x,y:x+y))
# print(calc(3,5,lambda x,y:x*y))
# print(calc(3,5,lambda x,y:x/y))
# print(calc(3,5,lambda x,y:x-y))


lt = [
    {'name': 'xiaomei', 'age': 18, 'height': 185,'weight':180},
    {'name': 'goudan', 'age': 16, 'height': 160,'weight':185},
    {'name': 'dagou', 'age': 20, 'height': 175,'weight':189},
    {'name': 'ergou', 'age': 15, 'height': 155,'weight':182}
]


def key(d):
    return d['age']


lt.sort(key=key)#指定key值进行排序
print(lt)
lt.sort(key=lambda d: d['weight'])
print(lt)

for i in lt:
    print(i)

 

posted @ 2019-01-12 21:25  青春叛逆者  阅读(140)  评论(0编辑  收藏  举报