Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用一个列表中的条件从另一个列表中查找值_Python_Zip - Fatal编程技术网

Python 如何使用一个列表中的条件从另一个列表中查找值

Python 如何使用一个列表中的条件从另一个列表中查找值,python,zip,Python,Zip,我有两份清单: lista = [0,5,0,5,0,5] listb = ['a','b','c','d','e','f'] 当lista的值为5时,它是否会在listb的相应位置找到它,因此字母'b'、'd'、'f'就是结果 我想用zip来获取它,但我不知道如何应用该条件。您可以通过条件列表来实现: lista = [0,5,0,5,0,5] listb = ['a','b','c','d','e','f'] print ([listb[i] for i,a in enumerate(li

我有两份清单:

lista = [0,5,0,5,0,5]
listb = ['a','b','c','d','e','f']
lista
的值为
5
时,它是否会在
listb
的相应位置找到它,因此字母
'b'、'd'、'f'
就是结果


我想用
zip
来获取它,但我不知道如何应用该条件。

您可以通过条件列表来实现:

lista = [0,5,0,5,0,5]
listb = ['a','b','c','d','e','f']
print ([listb[i] for i,a in enumerate(lista) if a == 5])

您可以通过条件列表执行此操作:

lista = [0,5,0,5,0,5]
listb = ['a','b','c','d','e','f']
print ([listb[i] for i,a in enumerate(lista) if a == 5])

您也可以使用numpy。如果你的数据集很大,速度会快得多

import numpy as np
lista = np.asarray([0,5,0,5,0,5])
listb = np.asarray(['a','b','c','d','e','f'])
listb[lista==5]

您也可以使用numpy。如果你的数据集很大,速度会快得多

import numpy as np
lista = np.asarray([0,5,0,5,0,5])
listb = np.asarray(['a','b','c','d','e','f'])
listb[lista==5]

当我输入它时,我得到了一个“bool”对象不可编辑的错误,只是用两种语言测试了它。它很好用。确保只复制和粘贴整个内容,然后首先尝试。这样行吗?你用的是哪一版本的python?3.3.2,但很好,很抱歉,我先在shell中尝试了一下,我的错…当我输入它时,我得到了一个错误“bool”object is not Iterable只是用两种语言测试了它。它很好用。确保只复制和粘贴整个内容,然后首先尝试。这样行吗?你用的是什么版本的python?3.3.2,但是很好,很抱歉,我先在shell中尝试了一下,我的坏。。。。