티스토리 뷰

반응형

리스트

  • 문자열, 숫자, 불 등은 어떤 하나의 값을 나타내는 자료형 : 개별적인 독립적인 '자료'
  • 여러 개의 값을 나타낼 수 있게 해주는 자료형 : 독립적 자료를 모아서 사용할 수 있게 해주는 특별한 형태
  • 자료를 저장할 수 있는 자료 [ ] 내부에 여러 종류의 자료를 넣어 선언.
  • 선언한 리스트를 출력하면 내부의 자료를 모두 출력
  • [ ] 대괄호에 자료를 쉼표로 구분해서 입력

 

리스트 선언하고 요소에 접근하기

요소

  • [ ] 대괄호 내부의 자료를 요소라고 하고, 영어로 element라고 부름
[요소, 요소, 요소, ...]

 

만약 다음과 같이 리스트를 선언했다면, 

list_a = [273, 32, 103, "문자열", True, False]

273 32 103 "문자열" True False
0 1 2 3 4 5

 

인덱스

각 요소가 들어 있는 위치를 말하는 숫자

list_a = [273, 32, 103, "문자열", True, False] 
print(list_a[0])
</>
273

print(list_a[3])
</>
문자열

 

(1) 리스트의 범위 선택하기 (슬라이싱 사용)

list_a[1:3] 은 1번째 글자부터 3번째 글자가 아닌 1번째 글자부터 2번째 글자까지 선택하는 것.

list_a[2:5] 은 2번째 글자부터 4번째 글자까지 범위 선택.

print(list_a[1:3])
</>
32, 103

print(list_a[2:5]
</>
103, "문자열", True

 

(2) 리스트 특정 요소 변경하기

list_a = [273, 32, 103, "문자열", True, False]
list_a[0] = "꾸꾸까까"
print(list_a)

</>
["꾸꾸까까", 32, 103, "문자열", True, False] 

다음과 같이 입력하여 '꾸꾸까까'라는 문자열을 0번째에 대입하면서 요소를 변경하고 있음

꾸꾸까까 32 103 문자열 True False
0 1 2 3 4 5

 

(3) 대괄호 안에 음수를 넣어 뒤에서부터 요소를 선택

문자열과 마찬가지로 리스트도 대괄호 안에 음수를 넣어 요소 선택 가능

list_a = [273, 32, 103, "문자열", True, False]

print(list_a[-1])
</>
False

print(list_a[-2])
</>
True

print(list_a[-3])
</>
문자열
273 32 103 문자열 True False
-6 -5 -4 -3 -2 -1

 

(4) 리스트 접근 연산자를 이중으로 사용하기

아래와 같은 리스트가 있을 때, list_a[3]을 지정하면 "문자열"을 꺼내오고 list_a[3][0]을 지정하면 3번째에서 가져온 "문자열"에서 다시 0번째 요소를 가져와 출력함

list_a = [273, 32, 103, "문자열", True, False]

print(list_a[3])
</>
문자열

print(list_a[3][0])
</>
문

 

(5) 리스트 안에 리스트를 사용하기

아래와 같이 기술하면 list_a는 리스트 세 개를 가지는 리스트로 만들어짐

list_a = [[1,2,3], [4,5,6], [7,8,9]]

print(list_a[1])
</>
[4,5,6]

print(list_a[1][1])
5

list_a

1,2,3 4,5,6 7,8,9
0 1 2

list_a[1]

4 5 6
0 1 2

 

리스트의 IndexError 예외

  • 리스트의 길이를 넘는 인덱스로 요소에 접근하려고 할 때 발생.
  • 요소가 존재하지 않는 위치에서 요소를 꺼내려고 할때 예외 발생
list_a = [273, 32, 103]

print(list_a[3])
</>
IndexError: list index out of range
반응형

'Language > PYTHON' 카테고리의 다른 글

딕셔너리  (0) 2021.06.20
리스트 (2) 리스트 연산자  (0) 2021.06.16
조건문 : if ~ else 구문 / elif 구문  (0) 2021.06.10
조건문 : If 조건문  (0) 2021.06.10
불 자료형 : T / F  (0) 2021.06.10
댓글