[Python] 리스트
- 파이썬(Python)
- 2022. 1. 28. 19:43
참조
소개
- 파이썬을 공부해야 할 일이 생겨서, 위키독스에 올라와 있는 점프 투 파이썬 내용을 보면서 파이썬 공부한 내용을 기록합니다.
- 보다 자세한 내용은 점프 투 파이썬 해당 사이트에 가셔서 더 깊게 확인하실 수 있습니다.
리스트 만드는 법
- 리스트를 사용하면 1, 3, 5, 7, 9 숫자 모음을 다음과 같이 간단하게 표현할 수 있습니다.
odd = [1, 3, 5, 7, 9]
- 리스트를 만들 때는 위에서 보는 것과 같이 대괄호([])로 감싸 주고 각 요솟값은 쉼표(,)로 구분해 줍니다.
리스트명 = [요소1, 요소2, 요소3, ...]
- 여러 가지 리스트의 생김새를 살펴보면 다음과 같습니다.
>>> a = []
>>> b = [1, 2, 3]
>>> c = ['Life', 'is', 'too', 'short']
>>> d = [1, 2, 'Life', 'is']
>>> e = [1, 2, ['Life', 'is']]
리스트의 인덱싱과 슬라이싱
- 리스트도 문자열처럼 인덱싱과 슬라이싱이 가능합니다.
리스트의 인덱싱
- 리스트 역시 문자열처럼 인덱싱을 적용할 수 있습니다.
- 먼저 a 변수에 [1,2,3] 값을 설정합니다.
>>> a = [1, 2, 3]
>>> a
[1, 2, 3]
- a[0]은 리스트 a의 첫 번째 요솟값을 말합니다.
>>> a[0]
1
- 다음 예는 리스트의 첫 번째 요소인 a[0]과 세 번째 요소인 a[2] 값을 더한 것입니다.
>>> a[0] + a[2]
4
- 이번에는 다음 예처럼 리스트 a를 숫자 1,2,3 과 또 다른 리스트인 ['a', 'b', 'c'] 를 포함하도록 만들어 봅니다.
>>> a = [1, 2, 3, ['a', 'b', 'c']]
- 다음 예를 따라합니다.
>>> a[0]
1
>>> a[-1]
['a', 'b', 'c']
>>> a[3]
['a', 'b', 'c']
예상한 대로 a[-1]은 마지막 요솟값 ['a', 'b', 'c']를 나타낸다. a[3]은 리스트 a의 네 번째 요소를 나타내기 때문에 마지막 요소를 나타내는 a[-1]과 동일한 결괏값을 보여 줍니다.
그렇다면 여기에서 리스트 a에 포함된 ['a', 'b', 'c'] 리스트에서 'a' 값을 인덱싱을 사용해 끄집어 내도록 하겠습니다.
>>> a[-1][0]
'a'
리스트의 슬라이싱
- 문자열과 마찬가지로 리스트에서도 슬라이싱 기법을 적용할 수 있습니다.
>>> a = [1, 2, 3, 4, 5]
>>> a[0:2]
[1, 2]
- 문자열에서 사용했던 슬라이싱 방법과 동일합니다.
- 몇 가지 예를 더 들어 보겠습니다.
>>> a = [1, 2, 3, 4, 5]
>>> b = a[:2]
>>> c = a[2:]
>>> b
[1, 2]
>>> c
[3, 4, 5]
- b 변수는 리스트 a의 첫 번째 요소부터 두 번째 요소인 a[1] 까지 나타내는 리스트입니다.
- 물론 a[2] 값인 3은 포함되지 않습니다.
- c라는 변수는 리스트 a의 세번째 요소부터 끝까지 나타내는 리스트입니다.
리스트 연산하기*
- 리스트 역시 + 기호를 사용해서 더할 수 있고
*
기호를 사용해서 반복할 수 있습니다. - 문자열과 마찬가지로 리스트에서도 되는지 직접 확인할 수 있습니다.
리스트 더하기(+)
>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> a + b
[1, 2, 3, 4, 5, 6]
- 리스트 사이에서 + 기호는 2개의 리스트를 합치는 기능을 합니다.
리스트 반복하기(*)
>>> a = [1, 2, 3]
>>> a * 3
[1, 2, 3, 1, 2, 3, 1, 2, 3]
- 위에서 볼 수 있듯이 [1, 2, 3] 리스트가 세 번 반복되어 새로운 리스트를 만들어 냅니다.
리스트 길이 구하기
- 리스트 길이를 구하기 위해서는 다음처럼 len 함수를 사용해야 합니다.
>>> a = [1, 2, 3]
>>> len(a)
3
리스트의 수정과 삭제
- 리스트는 값을 수정하거나 삭제할 수 있습니다.
리스트에서 값 수정하기
>>> a = [1, 2, 3]
>>> a[2] = 4
>>> a
[1, 2, 4]
- a[2]의 요솟값이 3에서 4로 바뀌었습니다.
del 함수 사용해 요소 삭제하기
>>> a = [1, 2, 3]
>>> del a[1]
>>> a
[1, 3]
- del a[x]는 x 번째 요솟값을 삭제합니다.
- 여기에서는 a 리스트에서 a[1]을 삭제하는 방법을 보여줍니다.
- del 함수는 파이썬이 자체적으로 가지고 있는 삭제 함수입니다.
- 다음처럼 슬라이싱 기법을 사용하여 리스트의 요소 여러 개를 한번에 삭제할 수도 있습니다.
>>> a = [1, 2, 3, 4, 5]
>>> del a[2:]
>>> a
[1, 2]
- a[2:] 에 해당하는 리스트의 요소들이 삭제되었습니다.
리스트 관련 함수들
- 문자열과 마찬가지로 리스트 변수 이름 뒤에 '.' 를 붙여서 여러 가지 리스트 함수를 사용할 수 있습니다.
- 유용하게 사용되는 리스트 관련 함수 몇가지에 대해서만 알아봅니다.
리스트에 요소 추가(append)
- append를 이용해서 리스트 요소를 추가할 수 있습니다.
>>> a = [1, 2, 3]
>>> a.append(4)
>>> a
[1, 2, 3, 4]
- 리스트 안에는 어떤 자료형도 추가할 수 있습니다.
>>> a.append([5,6])
>>> a
[1, 2, 3, 4, [5, 6]]
리스트 정렬(sort)
- sort 함수는 리스트의 요소를 순서대로 정렬해 줍니다.
>>> a = [1, 4, 3, 2]
>>> a.sort()
>>> a
[1, 2, 3, 4]
- 문자 역시 알파벳 순서로 정렬할 수 있습니다.
>>> a = ['a', 'c', 'b']
>>> a.sort()
>>> a
['a', 'b', 'c']
리스트 뒤집기
- reverse 함수는 리스트를 역순으로 뒤집어 줍니다.
- 이때 리스트 요소들을 순서대로 정렬한 다음 다시 역순으로 정렬하는 것이 아니라 그저 현재의 리스트를 그대로 거꾸로 뒤집습니다.
>>> a = ['a', 'c', 'b']
>>> a.reverse()
>>> a
['b', 'c', 'a']
위치 반환(index)
- index(x) 함수는 리스트에 x 값이 있으면 x의 위치 값을 돌려줍니다.
>>> a = [1,2,3]
>>> a.index(3)
2
>>> a.index(1)
0
리스트에 요소 삽입(insert)
- insert(a, b)는 리스트의 a 번째 위치에 b를 삽입하는 함수입니다.
- 파이썬에서는 숫자를 0부터 센다는 것을 인지합니다.
>>> a = [1, 2, 3]
>>> a.insert(0, 4)
>>> a
[4, 1, 2, 3]
>>> a.insert(3, 5)
>>> a
[4, 1, 2, 5, 3]
리스트 요소 제거(remove)
- remove(x)는 리스트에서 첫 번쨰로 나오는 x를 삭제하는 함수입니다.
>>> a = [1, 2, 3, 1, 2, 3]
>>> a.remove(3)
>>> a
[1, 2, 1, 2, 3]
>>> a.remove(3)
>>> a
[1, 2, 1, 2]
리스트 요소 끄집어내기(pop)
- pop()은 리스트의 맨 마지막 요소를 돌려주고 그 요소는 삭제합니다.
>>> a = [1,2,3]
>>> a.pop()
3
>>> a
[1, 2]
>>> a = [1,2,3]
>>> a.pop(1)
2
>>> a
[1, 3]
728x90
'파이썬(Python)' 카테고리의 다른 글
[Python] 딕셔너리 (0) | 2022.01.29 |
---|---|
[Python] 튜플 자료형 (0) | 2022.01.29 |
[Python] 문자열 자료형 (0) | 2022.01.27 |
[Python] 숫자형 자료형 (0) | 2022.01.27 |
[Python] 파이썬 1부터 n 까지의 합 구하기 (0) | 2022.01.25 |
이 글을 공유하기