простой вопрос понимания списка Python - PullRequest
2 голосов
/ 13 декабря 2010

Я пытаюсь выбрать элементы списка без самого первого элемента.следующий код работает, но для меня это выглядит некрасиво

[s[i] for i in range(len(s)) if i>0]

есть ли лучший способ написать это?спасибо

Ответы [ 2 ]

11 голосов
/ 13 декабря 2010

Используйте обозначение нарезки:

s[1:]

Кроме того, вы можете избежать копирования списка следующим образом:

itertools.islice(s, 1, None)

Результатом является не список - например, он не поддерживает произвольный доступ - но вы можете передать его любому, что принимает итератор.

2 голосов
/ 13 декабря 2010

Не будет ли s[1:] правильным?

...