Нужна помощь в понимании нарезки списка внутри понимания списка, - PullRequest
0 голосов
/ 23 февраля 2019

Я знаю, что следующее разбивает список и разбивает его на два списка в зависимости от того, является ли индекс четным или нечетным.Но не уверен, как [n :: 2] для n в [1,0] работает.

[[1,2,3,4,5] [n:: 2] для n в [1, 0]] [[2, 4], [1, 3, 5]]

Можете ли вы указать мне на пост, который объясняети проведите меня через логику, стоящую за этим?Спасибо.

1 Ответ

0 голосов
/ 24 февраля 2019

Левая часть происходит с каждым значением n.n указывает начальную позицию для 2-го элемента, включая n-й.

print([[1,2,3,4,5][n::2] for n in [1, 0] ] )

print([[1,2,3,4,5][1::2]]) # outputs [[2, 4]]
print([[1,2,3,4,5][0::2]]) # outputs [[1, 3, 5]]
print([[1,2,3,4,5][4::2]]) # outputs [[5]]
...