● 리스트 자료형
: 리스트를 생성할 때 [ ]로 감싸주고, 요소값은 ,쉼표(,)로 구분(자바의 리스트와 동일)
리스트명 = [요소1, 요소2, 요소3, ...]
예시)

※ 파이썬 리스트 형태
a = [] 비어있는 리스트 # a = list()로 생성 가능
b = [1,2,3] 숫자를 요소값으로 가지는 리스트
c = ['life','is','too','short'] 문자열을 요소값으로 가지는 리스트
d = [1,2,'life','is'] 숫자, 문자열을 함께 요소값으로 가진 리스트
e = [1,2,['life','is']] 숫자, 리스트를 요소값으로 가진 리스트
* 어떤 값(자료형)이라도 요소로 가질 수 있다.
- 리스트 인덱싱
예시 1)

** a의 첫번째 요소 a[0] = 1 , a[2] = 3으로 연산이 가능하며 4가 출력된다.
예시 2)

** 리스트 a에 숫자 1,2,3 뿐만 아닌 다른 리스트 ['a', 'b', 'c']를 포함하였으며 인덱스 값에 맞춰 출력된다.
** a[-1]은 마지막 요소값인 리스트 ['a', 'b', 'c']를 출력
- 리스트에 내용 중 원하는 값 가져오기 예시)
예시 1)

** a[3]은 ['a', 'b', 'c'] 리스트를 가르키며 [0]을 통해 해당 리스트의 첫 번째 요소값을 불러 올 수 있다.
예시 2)

** 3중 리스트도 예시1과 동일. 다만 리스트를 다중 중첩해서 사용하는 것은 혼란스러울 수 있어 자주 사용하지 않음
- 리스트 슬라이싱
예시)

** 문자열의 슬라이싱과 사용방법은 동일하다.
- 중첩된 리스트에서 슬라이싱
예시)

** a[2:5]는 index 0부터 시작할 때 2의 값은 3이되며, 5의 값은 4를 나타낸다.
- 리스트 연산하기
1. 리스트 더하기(+)
예시)

** 리스트 사이에스 + 는 2개의 리스트를 합치는 기능을 한다 // 문자열에서 "abc"+"def" = "abcdef"가 된다.
2, 리스트 반복하기(*)
예시)

** [1,2,3]가 3번 반복되어 출력
3. 리스트 길이 구하기
예시)

** len() 사용, 리스트외 듀플, 딕셔너리에도 사용 가능
※ 리스트 연산 오류 체크
a = [1, 2, 3]
a[2] + "hi"
위 값을 입력할 경우 오류가 발생한다.
>>TypeError: unsupported operand type(s) for +: 'int' and 'str'
a[2]는 정수인데 "hi"는 문자열이다. 정수와 문자열은 서로 더할 수 없기 때문에 오류가 발생한 것이다.
정수를 문자열로 바꾸기 위해선 아래와 같이 수정이 필요하다
str(a[2]) + "hi"
위와 같이 수정하면 3hi 가 정상적으로 출력된다.
** str은 정수나 실수를 문자열로 바꿔주는 파이썬 내장 함수이다.
- 리스트의 수정과 삭제
1. 리스트 값 수정
예시)

** index 2의 값인 3이 4로 변경되어 출력
2. 리스트 값 삭제
예시)

** del 함수를 사용하여 index 1의 값인 2가 삭제 되어 1, 3 출력
** del[x] 는 x 번째 요소값 삭제 // del 객체(파이썬에 사용되는 모든 자료형) 로 사용
3. 리스트 슬라이싱 삭제
예시)

** a[2:]에 해당하는 리스트 요소인 [3,4,5] 삭제 후 출력
- 리스트 관련 함수
1. 리스트 요소 추가(append)
예시)

** append는 '덧붙이다. 첨부하다'란 뜻으로 리스트 안에 리스트도 추가할 수 있다.
2. 리스트 정렬(sort)
예시)

** 알파벳, 한글도 정렬 가능(ascii코드로 인해 가능/A~Z, a~z 숫자 부여)
3. 리스트 뒤집기/역순 출력(reverse)
예시)

** reverse함수는 출력된 리스트를 역순으로 출력한다.
** 요소를 순서대로 정렬한 후 역순 출력이 아닌 현재 리스트의 역순 출력이다.
4. 인덱스 반환(index)
예시)

** index() 함수는 리스트에 값이 있으면 해당 인덱스의 값(위치 값)을 리턴
** index() 값이 없는 경우 오류 발생
5. 리스트에 요소 삽입(insert)
예시)

** insert(a,b)는 리스트의 a 번쨰 위치에 b를 삽입하는 함수
** a.insert(0,'하')는 0번째 위치에 하 추가, a.insert(2,'창')은 2번쨰 위치에 창 추가하여 출력
6. 리스트 요소 제거(remove)
예시)

** a가 3이라는 값을 2개 가지고 있을 경우 첫번째 3만 제거 된다.
** a.remove(3)을 한번 더 실행해야 3이 완전 삭제된다.
예시)

7. 리스트 요소 꺼내기(pop)
pop() 함수는 리스트의 맨 마지막 요소를 리턴하고 해당 요소는 삭제한다.
예시)

예시2)

** a 리스트를 살펴보면 마지막 요소인 3을 삭제하고 [1,2]만 남아 출력
** pop() 괄호안에 매개변수로 index 값을 넣을 경우 해당 값을 뽑아 낸후 삭제/없는 경우에는 마지막값 뽑아낸 후 삭제
예시)

** a.pop(1)은 a리스트의 index 1 값이며, 리스트 안의 2이다. a 출력 시 2가 삭제된 [1,3]만 출력
8. 리스트에 포함된 요소 x의 개수 세기(count)
예시)

**count(x)는 리스트의 요소안에 x가 몇개인지 세어 리턴 // 1이라는 값이 리스트 내에 2개가 있어 2 리턴
9. 리스트 확장(extend)
예시 1)

** extend(x)에서 x에는 리스트만 올 수 있으며, 기존 a 리스트에 x 리스트를 더하게 된다.
예시 2)

** b에 대입한 리스트[6,7]도 a 리스트에 확장할 수 있다.
예시 3)

** 예시 2)의 a.extend([4,5])는 a +=[4,5]와 동일한 표현식이다.
'Language > Python' 카테고리의 다른 글
| Python 딕셔너리 자료형 (1) | 2024.04.26 |
|---|---|
| Python 튜플 자료형 (0) | 2024.04.24 |
| Python 문자 자료형 (1) | 2024.04.24 |
| Python 숫자 자료형 (1) | 2024.04.22 |
| Python 살펴보기 (0) | 2024.04.22 |