파이썬 기초 문법 - 05

Dalbi·2021년 3월 20일
0
post-thumbnail
post-custom-banner

Python

list 조작하기

리스트에 요소를 추가하는 메서드는 3가지가 있습니다.

  • append: 요소 하나를 추가
  • extend: 리스트를 연결하여 확장
  • insert: 특정 인덱스에 요소 추가

list.append(요소)

	a = [1, 2, 3, 4]
	a.append(50)
	print(a)
    -> [1, 2, 3, 4, 50]

append는 리스트 끝에 요소를 추가합니다. 물론 빈 리스트에 값을 추가할 수도 있습니다. 또한 리스트를 추가하면 리스트를 추가할 수도 있습니다.

	a.append([600, 700])
	print(a)
    -> [1, 2, 3, 4, 50, [600, 700]]
    	print(len(a))
    -> 6

a.append([600, 700])은 [600, 700]이라는 요소 하나를 리스트 a 끝에 추가합니다. 따라서 리스트 a를 len으로 길이를 구해보면 7가 아닌 6가 나옵니다.

list.extend(요소)

	a = [1, 2, 3, 4]
	a.extend([500, 600])
	print(a)
    -> [1, 2, 3, 4, 500, 600]
    	print(len(a))
    -> 6

extend는 리스트 리스트 끝에 다른 리스트를 연결하여 리스트를 확장합니다.

list.insert(인덱스, 요소)

	a = [1, 2, 3, 4]
	a.insert(2, 50)
	print(a)
    -> [1, 2, 50, 3, 4]
    	print(len(a))
    -> 5

list.insert(인덱스, 요소)는 리스트에 특정 인덱스에 요소를 추가합니다. 그리고 insert에 마지막 인덱스보다 큰 값을 지정하면 리스트 끝에 요소 하나를 추가할 수 있습니다.

  • list.insert(0, 요소): 리스트의 맨 처음에 요소를 추가
  • list.insert(len(리스트), 요소): 리스트 끝에 요소를 추가
	a = [1, 2, 3, 4]
    	a.insert(0, 10)
    	print(a)
    -> [10, 1, 2, 3, 4]
    	a.insert(len(a), 50)
        print(a)
    -> [10, 1, 2, 3, 4, 50]
    	a.insert(2, [20, 30])
        print(a)
    ->	[10, 1, [20, 30], 2, 3, 4, 50]

만약 리스트 중간에 요소 여러 개를 추가하고 싶다면 슬라이스에 요소 할당하기를 활용하면 됩니다.

	a = [1, 2, 3, 4]
    	a[1:1] = [500, 600]
    	print(a)
    -> [1, 500, 600, 2, 3, 4]

요소를 삭제하는 메서드는 2가지가 있습니다.

  • pop: 마지막 요소 또는 특정 인덱스의 요소를 삭제
  • remove: 특정 값을 찾아서 삭제

list.pop() 또는 list.pop(인덱스)

	a = [1, 2, 3, 4, 5]
    	print(a.pop())
    -> 5
    	print(a.pop(0))
    -> 1
    	print(a)
    -> [2, 3, 4]

list.pop()은 요소를 반환하고 해당 요소를 리스트에서 삭제합니다. 인덱스를 지정하면 해당 요소를 반환하고 요소를 리스트에서 삭제합니다.

list.remove(요소)

	a = [1, 2, 3, 4, 5, 3, 6]
    	a.remove(3)
        print(a)
    -> [1, 2, 4, 5, 3, 6]

list.remove(요소)는 리스트 내 해당 첫 요소를 삭제합니다.

list.index(요소)

	a = [1, 2, 3, 4, 5, 3, 6]
    	print(a.index(3))
    -> 2

list.index(요소)는 리스트 내 해당 첫 요소를 찾아서 위치를 반환합니다.

list.count(값)

	a = [1, 2, 3, 4, 5, 3, 6]
    	print(a.count(3))
    -> 2

list.count(값)은 리스트 내 해당 요소의 개수를 반환합니다.

list.reverse()

	a = [10, 20, 30, 15, 20, 40]
    	a.reverse()
        print(a)
    -> [40, 20, 15, 30, 20, 10]

list.reverse()는 리스트의 요소 순서를 반대로 뒤집습니다.

list.sort()

	a = [10, 20, 30, 15, 20, 40]
    	a.sort()
    	print(a)
    -> [10, 15, 20, 20, 30, 40]
    	a.sort(reverse=True)
        print(a)
    -> [40, 30, 20, 20, 15, 10]

list.sort()는 리스트의 요소를 오름차순으로 정렬하며 list.sort(reverse=True)는 요소를 내림차순으로 정렬합니다.

list.clear()

	a = [10, 20, 30, 15, 20, 40]
    	a.clear()
    	print(a)
    -> []

list.clear()는 리스트 내 모든 요소를 삭제합니다.

profile
백엔드..?
post-custom-banner

0개의 댓글