a=['good' , 'study' , 'day' , 'up']
b=[0 , 1 , 1 , 0]
c=['study' , 'day']
要求:当 b[i] == 1时,提取出 a[i] ,并组成新列表c
在不使用循环遍历的前提下,有没有一个函数能直接做到?
直接列表解析
c = [a[i] for i in range(len(a)) if b[i] == 1]
np.array(a)[np.array(b) == 1].tolist()
用lambda表达式。
a=['good' , 'study' , 'day' , 'up']
b=[0 , 1 , 1 , 0]
c=['study' , 'day']
count = -1;
def is_odd(n):
global count
count+=1;
x = a[count] if n==1 else ''
return x
L = list(map(is_odd, b))
def is_null(n):
return n!=''
L = list(filter(is_null, L))
print(L)
可以修改你的b列表吗?
我的这个会吧b修改了,有用的话点一下采纳