我在Python中找到了很多关于列表的文档。但我没有找到以下案例的答案:
我有一个这样的列表:[False, False, False, VARIABLE, False, False]
。
是否存在一种方法来获取VARIABLE值(是一个整数),而不是在每个元素上使用for循环并使用列表推导?一种"其中",为了说:选择列表中的项目WHICH不是假的。
重要的是,VARIABLE在列表中始终是唯一的。列表中不可能有两个VARIABLE。
修改
就我而言,@ AChampion给出的解决方案是最好的解决方案。谢谢你的提示。我必须得到VARIABLE的值,这正是我对你的解决方案所具有的。
答案 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