我怀疑在Python 2.7中有多种方法可以做到这一点,但我希望能够在组合中打印每个子列表的前三个元素。有没有办法做到这一点没有循环?在每个子列表中切分一系列元素?
combos = [ [1,2,3,.14], [5,6,7,.18], [9,10,11,.12], [1,2,3,.15] ]
使得打印语句的输出将是:
[ [1,2,3], [5,6,7], [9,10,11], [1,2,3] ]
***抵达后您的建议: 我努力,看看如何将我的代码结构,但名单内工作理解是可以做到像这样,if语句的一部分,我没有认识到:
p0combos = [ [1,2,3,.14], [5,6,7,.18], [9,10,11,.12], [1,2,3,.15] ]
p0 = [1, 2, 3]
if p0 not in [combo[:3] for combo in p0combos]:
print combo[:3]
print 'p0 not found'
else:
print 'p0 found'
print combo[3:4]
输出:
p0 found
[0.15]
谢谢大家。
你将需要一个循环,无论是作为列表理解还是for循环 –