00 列表推导式

列表推导式

基本格式
"""
目的:方便的生成一个列表。
格式:
	v1 = [i for i in 可迭代对象 ]
	v2 = [i for i in 可迭代对象 if 条件 ] # 条件为true才进行append
"""
v1 = [ i for i in 'alex' ]  
v2 = [i+100 for i in range(10)]
v3 = [99 if i>5 else 66  for i in range(10)]

def func():
    return 100
v4 = [func for i in range(10)]

v5 = [lambda : 100 for i in range(10)]
result = v5[9]()

def func():
    return i
v6 = [func for i in range(10)]  #i为8,v6为 9个func函数
result = v6[5]()

v7 = [lambda :i for i in range(10)] #匿名函数  
result = v7[5]()


v8 = [lambda x:x*i for i in range(10)] # 新浪微博面试题
# 1.请问 v8 是什么?  #V8为10个匿名函数,每个函数接收一个参数
# 2.请问 v8[0](2) 的结果是什么?  #结果等于2*9 = 18

# 面试题
def num():
    return [lambda x:i*x for i in range(4)]  #i 为:3
# num() -> [函数,函数,函数,函数]
print([ m(2) for m in num() ]) # [6,6,6,6]

# ##################### 筛选 #########################
v9 = [i for i in range(10) if i > 5]  #先进行循环,然后进行判断:i是否大于5,如果为true,进行append进去
posted @ 2024-09-26 06:20  jhchena  阅读(5)  评论(0编辑  收藏  举报