匿名函数:
lambda 表达式
语法:
变量 = lambda 参数1,参数2,参数3…: 返回值
案例
# def func():
# print(123465)
# return 9999
#
# ret = func()
# print(ret)
# def func(a,b):
# return a+b
#
# ret = func(1,1)
# print(ret)
# fn = lambda a , b: a + b
# print(fn)
# ret = fn(12,13)
# print(ret)
推导式:
简化代码。
语法:
列表推导式:[数据 for循环 if判断]
集合推导式:{数据 for循环 if判断}
字典推导式:{k:v for循环 if判断}
不要把推导式妖魔化。
(数据 for循环 if判断) -> 不是元组推导式,根本就没有元组推导式。 这玩意生成器表达式
元组推导式???? -> 没有推导式
案例
# lst = []
# for i in range(10):
# lst.append(i)
# print(lst)
# lst = [i for i in range(10)]
# print(lst)
# 1.请创建一个列表[1,3,4,5,7,9]
# lst = [i for i in range(1,10,2)]
# lsts = [i for i in range(10) if i%2!=0]
# print(lst)
# print(lsts)
# lst = [f"lst{i}" for i in range(50)]
# print(lst)
# 3.将如下列表中所有的英文字母修改成大写
# lst1 = ["allen","tony","kevin","sylar"]
# lst2 = [item.upper() for item in lst1]
# print(lst2)
# 集合推导式
# s = { i for i in range(10) if i%2!=0}
# print(s)
# 字典推导式
# 4.请将下列的列表修改成字典,要求,索引做为key, 数据作为value
lst = ["赵本山","潘长江","高达","奥特曼"]
dic = {i:lst[i] for i in range(len(lst))}
print(dic)