在列表

时间:2015-10-14 15:50:27

标签: python list list-comprehension

我在Python中找到了很多关于列表的文档。但我没有找到以下案例的答案:

我有一个这样的列表:[False, False, False, VARIABLE, False, False]

是否存在一种方法来获取VARIABLE值(是一个整数),而不是在每个元素上使用for循环并使用列表推导?一种"其中",为了说:选择列表中的项目WHICH不是假的。

重要的是,VARIABLE在列表中始终是唯一的。列表中不可能有两个VARIABLE。

修改

就我而言,@ AChampion给出的解决方案是最好的解决方案。谢谢你的提示。我必须得到VARIABLE的值,这正是我对你的解决方案所具有的。

1 个答案:

答案 0 :(得分:1)

如果整数非零,您可以使用reduce(Python3中的functools.reduce

>>> x = [False, False, False, 10, False, False]
>>> reduce(lambda i,j:i or j, x)
10

您也可以在这里使用生成器表达式

>>> x = [False, False, False, 10, False, False]
>>> (i for i in x if i!=False).next()
10

同时检查包first

>>> from first import first
>>> first([False, False, False, 10, False, False])
10