list(자료형)
Python list(자료형) 란?
- RAM에 변수를 자료형으로 저장하는 방식.
- 시퀀스의 속성을 지닌 index를 가지고 있다.
- Python의 list는 C언어와 달리 변수에 Integer & float별 data type을 선언하지 않아도 "변수명=값"을 명시하면 알아서 data type을 지정해준다.
C언어 | Python | Data Type |
int a=1 | a=1 | Integer(int) |
float b=1.5 | b=1.5 | float |
1. list
- 동일 속성의 데이터들을 하나의 변수로 관리할 수 있는 데이터 자료형이다.
- e.g. 학급에 대해서 성적을 취합하고 싶은 경우 (학급 인원 / 성적) = list - list() > e.g. class_score = list([90, 30, 60])
- 지금은 위에 대괄호로 묶어서 명시한 데이터 값들과 결과값은 동일하지만 "list()"는 나중에 tuple이나 다른 자료형으로 변환할 때 사용되므로, 명시할 수 있는 두가지 방법 다 알아두어야한다.
class_score = [90, 30, 60] print(class_score) |
- Data Type Check
- data type을 확인하려고 할 때는 type(변수명)을 선언해서 그 변수의 데이터 타입을 확인할 수 있다.
print(type(class_score)) # result: <class 'list'> |
- 자료형에는 int & string & list & tuple 등 다양한 자료형을 선언할 수 있다.
- e.g. class_score = [1, 2, [1, 2]]
- Index
- list에 담은 데이터 크기를 index라 한다.
- 하나의 element를 가지고 올 때 0부터 데이터 크기에 맞게 선언해서 indexing할 수 있다.
# 모든 Programming Language의 index는 항상 0부터 시작한다. # result: 90 |
# list의 element가 많을 경우 맨 마지막의 인덱스의 값을 구하는 방법 print(class_score[-1]) # result: 60 |
# 뒤에서 두번째인 인덱스의 값을 구할 경우 print(class_score[-2]) # result: 30 |
# 범위 인덱싱 print(class_score[0:2]) # result: [90, 30] |
# [:1] 앞에 인덱스 크기를 지정해주지 않아도 0이 생략됐음을 의미한다. # [1:] 뒤에 인덱스 크기를 지정하지 않을 경우에는 앞에 지정한 인덱스 크기부터 맨 마지막 인덱스까지의 값을 출력한다. 즉, "-1"이 생략됐음을 의미한다. print(class_score[0:]) # resutl: [90, 30, 60] # [:] 앞, 뒤를 지정하지 않을 경우 그냥 list 그대로 인덱스의 값이 출력된다. print(class_score[:]) # result: [90, 30, 60] |
2. 다차원 list (2차원 list)
- 리스트 안에 리스트가 들어가는 경우를 뜻한다.
# class_score 자체 데이터 타입은 list이지만, class_score 리스트의 element 또한 리스트인 자료형을 볼 수 있다. print(type(class_score)) # result: list print(type(class_score[0])) # result: list |