【发布时间】:2016-05-08 04:28:00
【问题描述】:
假设我有一个ints 的列表:
listOfNumbers = range(100)
我想返回一个满足特定条件的元素列表,比如:
def meetsCondition(element):
return bool(element != 0 and element % 7 == 0)
在list 中返回子list 元素的Pythonic 方式是什么,其中meetsCondition(element) 是True?
一种天真的方法:
def subList(inputList):
outputList = []
for element in inputList:
if meetsCondition(element):
outputList.append(element)
return outputList
divisibleBySeven = subList(listOfNumbers)
有没有一种简单的方法可以做到这一点,也许是使用列表解析或set() 函数,并且没有临时的outputList?
【问题讨论】:
标签: python list list-comprehension