Python - list의 맨 앞에 데이터 추가

By JS | Last updated: January 01, 2021

list의 append() 함수는 리스트의 맨 뒤에 데이터를 추가합니다. 만약 리스트의 맨 앞에 데이터를 추가하려면 어떻게 해야 할까요?

이 글에서는 리스트의 맨 앞에 데이터를 추가하는 방법을 소개합니다.

  • insert()를 이용한 방법
  • collections.deque()를 이용한 방법

insert()

insert(index, item)는 인자로 전달된 index에 아이템을 추가합니다. 따라서 리스트의 맨 앞에 아이템을 추가하려면 insert(0, item)으로 할 수 있습니다.

list = [2, 9, 3]
list.insert(0, 'a')
print(list)

Output:

['a', 2, 9, 3]

collections.deque()

collections.deque()를 사용할 수도 있습니다. deque의 appendleft(item)는 deque의 맨 앞에 데이터를 추가합니다.

아래 예제는, 리스트를 먼저 deque로 변환하고 맨 앞에 아이템을 추가한 뒤에 다시 deque를 list로 변환하고 있습니다.

from collections import deque

my_list = [2, 9, 3]
deq = deque(my_list)
deq.appendleft('a')

new_list = list(deq)
print(new_list)

Output:

['a', 2, 9, 3]

deque.append()

참고로, deque는 append()도 제공하며 리스트의 마지막에 데이터를 추가합니다.

my_list = [2, 9, 3]
deq = deque(my_list)
deq.appendleft('a')
deq.append('b')

print(list(deq))

Output:

['a', 2, 9, 3, 'b']

deque.pop(), deque.popleft()

deque의 pop()은 리스트의 마지막 데이터를 제거하며, popleft()는 리스트의 맨 앞의 데이터를 제거합니다.

my_list = [2, 9, 3]
deq = deque(my_list)
deq.pop()
print(list(deq))

deq.popleft()
print(list(deq))

Output:

[2, 9]
[9]

Related Posts

댓글을 보거나 쓰려면 이 버튼을 눌러주세요.
codechachaCopyright ©2019 codechacha