[python] 목록에서 첫 번째 항목을 제거하는 방법?

목록 [0, 1, 2, 3, 4]을 만들려고합니다 [1, 2, 3, 4]. 어떻게하면 되나요?



답변

파이썬리스트

list.pop (인덱스)

>>> l = ['a', 'b', 'c', 'd']
>>> l.pop(0)
'a'
>>> l
['b', 'c', 'd']
>>> 

델 목록 [인덱스]

>>> l = ['a', 'b', 'c', 'd']
>>> del l[0]
>>> l
['b', 'c', 'd']
>>> 

이들은 모두 원래 목록을 수정합니다.

다른 사람들은 슬라이싱을 제안했습니다.

  • 리스트를 복사
  • 부분 집합을 반환 할 수있다

또한 많은 pop (0)을 수행하는 경우 collections를 봐야합니다.

from collections import deque
>>> l = deque(['a', 'b', 'c', 'd'])
>>> l.popleft()
'a'
>>> l
deque(['b', 'c', 'd'])
  • 목록의 왼쪽 끝에서 더 높은 성능을 제공합니다

답변

슬라이싱 :

x = [0,1,2,3,4]
x = x[1:]

실제로 원본의 하위 집합을 반환하지만 수정하지는 않습니다.


답변

>>> x = [0, 1, 2, 3, 4]
>>> x.pop(0)
0

여기 에 더 많은 .


답변

목록 슬라이싱을 사용하면 자세한 내용 은 목록에 대한 Python 자습서 를 참조하십시오.

>>> l = [0, 1, 2, 3, 4]
>>> l[1:]
[1, 2, 3, 4]


답변

당신은 이것을 할 것입니다

l = [0, 1, 2, 3, 4]
l.pop(0)

또는 l = l[1:]

장점과 단점

pop을 사용하면 값을 검색 할 수 있습니다

~라고 x = l.pop(0)
x말하다0


답변

그런 다음 삭제하십시오.

x = [0, 1, 2, 3, 4]
del x[0]
print x
# [1, 2, 3, 4]


답변

예를 들어 list.reverse()목록 list.pop()을 뒤집은 다음 마지막 요소를 제거하는 데 사용할 수 있습니다 .

l = [0, 1, 2, 3, 4]
l.reverse()
print l
[4, 3, 2, 1, 0]


l.pop()
0
l.pop()
1
l.pop()
2
l.pop()
3
l.pop()
4