我正在使用条件列表推导式例如newlist = [x for x in list if x % 2 == 0]
。我想将结果列表的长度限制到特定数量。
是否有可能在不首先完全理解列表并对其进行切片的情况下实现这一点?
我想象中的功能类似于:
limit = 10
newlist = []
for x in list:
if len(newlist) > limit:
break
if x % 2 == 0:
newlist.append(x)
在我的特定用例中,由于if条件不会以任何可预测的间隔返回True,因此无法对原始列表进行切片(例如[x for x in list[:25] if x % 2 == 0]
)。
提前感谢。