Python 在新列表中获取true或false的列表条件
我有我的清单:Python 在新列表中获取true或false的列表条件,python,Python,我有我的清单: >>> labels = ['setosa', 'setosa', 'versicolor', 'versicolor', 'virginica'] 我想创建一个新的列表,在'setosa'索引上使用与True相同数量的元素,在别处使用False元素 我试过这样做 >>> b = 'setosa' in labels >>> b True 我想要一个包含5个元素的列表: [True, True, False, False,
>>> labels = ['setosa', 'setosa', 'versicolor', 'versicolor', 'virginica']
我想创建一个新的列表,在'setosa'
索引上使用与True
相同数量的元素,在别处使用False
元素
我试过这样做
>>> b = 'setosa' in labels
>>> b
True
我想要一个包含5个元素的列表:
[True, True, False, False, False]
只需使用列表:
lst = [label == "setosa" for label in labels]
您可以使用
.append()
函数:
new_list = []
for element in labels: new_list.append('setosa' == element)
您可以使用,它在Python 2中返回一个列表
:
>>> labels = ['setosa', 'setosa', 'versicolor', 'versicolor', 'virginica']
>>> map('setosa'.__eq__, labels)
[True, True, False, False, False]
在Python 3中,如果需要列表:
抱歉@peterwoodb因为它比较短,每个看到它的人都会投票
>>> list(map('setosa'.__eq__, labels))
[True, True, False, False, False]