안녕하세요!
오늘은 자료구조 중 list()에 대해서 살펴볼까 합니다.
list()는 다양한 메소드를 포함하고 있습니다. 자주 사용하는 메소드까지 살펴보겠습니다.
여러 값들을 하나의 변수에 저장하고 관리할 수 있게 해주는 순차적인 자료구조입니다.
리스트의 각 항목은 위치(인덱스)를 가지고 있으며, 인덱스를 사용하여 접근할 수 있습니다. 인덱스는 0부터 시작합니다.
※ 파이썬을 다뤄보지 않았다면 인덱스를 1부터라고 착각할 수 있는데 모든 인덱스는 0부터 시작한다는 것을 명심해야 합니다.
리스트의 일부분만을 추출할 수 있습니다.
◈ 리스트의 인덱싱을 통해서 값을 출력하면 값(즉, 자료형으로)만이 출력됩니다. 반면 리스트의 슬라이싱을 통해서 값을 출력하면 리스트의 형태를 띄게 됩니다. 여기서 인덱싱을 통해 추출하면 1개의 차원이 감소되지만 슬라이싱을 통해서 추출하면 차원이 변하지 않음을 확인할 수 있습니다.
리스트끼리 더하거나 뺀다면 값끼리 덧셈이나 뺼셈이 실행되는 것이 아니라 리스트끼리 결합이 일어납니다.
리스트에 정수를 곱한 경우에도 분배 법칙을 통해서 각각 값에 정수가 곱해지는 것이 아니라 리스트의 반복 횟수를 의미합니다.
값끼리의 연산을 하고자 한다면 인덱싱을 통해서 값끼리의 연산하는 방법이 있습니다.
리스트를 다루기 위한 여러 함수와 메소드들이 있습니다.
1. len() 함수
2. list.append() 메소드
append()는 list에 사용되며, 왼쪽을 기준으로 시작하여 list의 끝에 새로운 하나의 요소를 추가하는 메소드입니다.
3. list.extend() 메소드
extend()는 append()와 달리 리스트에 여러 요소를 추가할 수 있습니다. (list형태로 추가해야 합니다.)
4. list.pop() 메소드
pop을 이용하여 리스트 마지막 요소를 삭제하고 삭제된 요소를 반환해 줍니다.
5. list.insert() 메소드
insert를 이용해서 리스트의 특정 인덱스에 요소를 한 개만 추가합니다.
insert(index 번호, 추가할 요소)
6. list.index() 메소드
index를 통해 list에서 특정 값의 index를 반환해줍니다.
7. list.reverse() 메소드
list의 요소들의 순서를 반대로 변경 후 저장합니다. reverse메소드를 이용하면 inplace함수이기 때문에 자동으로 실행 후 저장됩니다.
reverse()를 이용하지 않고 슬라이싱을 사용하여 list의 순서를 뒤짚는 방법도 있습니다.
7. list.sort() 메소드
sort()를 통해 list의 요소를 오름차순으로 정렬할 수 있습니다. sort 또한 inplace함수입니다.
이번에는 sort를 통해 내림차순으로 정렬하는 방법을 보여드리겠습니다.
위에서는 숫자를 오름차순, 내림차순으로 정렬해보았습니다. 문자 또한 오름차순, 내림차순으로 정렬할 수 있을까요?? 알파벳은 아스키코드 번호, 한글은 유니코드 번호 순서로 오름차순, 내림차순으로 정렬됩니다.
8. sorted() 함수
위에서 소개한 메소드들은 list 한해서만 사용가능합니다. sorted() 함수는 list가 아니더라도 사용 가능합니다.
sorted() 함수를 통해서 오름차순, 내림차순으로 정렬해보겠습니다.
9. count() 함수
count()를 통해 list에서 특정 요소의 갯수를 반환할 수 있습니다.
Python 06. input함수 (0) | 2024.03.13 |
---|---|
Python 05. Collection Type(Tuple) (0) | 2024.03.13 |
Python 03. 문자열 (1) | 2024.03.12 |
Python 02. 변수! (1) | 2024.03.12 |
Python 01. print함수 (0) | 2024.03.12 |