728x90
리스트
- 여러 개의 데이터를 연속적으로 담아 처리하는 자료형입니다.
- JAVA의 배열, Array라고 생각하면 됩니다. (물론 훨씬 리스트가 기능이 많습니다.)
- 배열 혹은 테이블이라고 부르기도 합니다.
- 대괄호에 넣어서 초기화합니다.
- 쉼표로 원소를 구분합니다.
- 언제나 그랬듯이, index는 0부터 시작합니다.
#직접 데이터를 삽입하여 초기화하는 방법
arr = [1,2,3,4,5,6,7,8,9,10]
print(a)
print(a[2])
#크기가 n이고 모든 값이 0인 1차원 리스트 초기화
n = 10
a = [0] * n
print(a)
# print 결과
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
3
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
인덱싱
- 인덱스 값을 입력하여 리스트의 특정한 원소에 접근하는 것입니다.
a = [1,2,3,4,5,6,7,8,9,10]
print(a[5])
print(a[-1])
a[3] = 100
print(a)
# print결과
6
10
[1,2,3,100,5,6,7,8,9,10]
슬라이싱
- 리스트에서 연속적인 위치를 갖는 원소들을 가져와야 할 때 사용합니다.
- [] 안에 :를 넣어서 시작 인덱스와 끝 인덱스 설정이 가능합니다.
- 끝 인덱스는 포함하지 않습니다.
a = [1,2,3,4,5]
print(a[1:3])
# print 결과
[2,3]
리스트 컴프리헨션(Comprehension)
- 리스트를 초기화하는 방법 중 하나입니다.
- 대괄호 안에 조건문이나 반복문을 써서 리스트를 초기화합니다.
- 2차원 리스트를 초기화할 때 효과적입니다.
# 0부터 9
a = [i for i in range(10)]
print(a)
# 0부터 19
a = [i for i in range(20) if i % 2 == 1]
print(a)
# 1부터 9
a = [i*i for i in range(1,10)]
print(a)
# n * m 크기의 2차원 리스트 초기화
n = 4
m = 3
a = [[0] * m for _ in range(n)]
print(a)
# print 결과
[0,1,2,3,4,5,6,7,8,9]
[1,3,5,7,9,11,13,15,17,19]
[1,4,9,16,...,81]
[[0,0,0],[0,0,0],[0,0,0],[0,0,0]]
리스트 관련 메소드
- list.append(3) - 리스트에 원소 하나 삽입
- list.sort() or list.sort(reverse=True) - 오름차순 내림차순 정렬
- list.reverse() - 리스트의 원소의 순서를 뒤집음
- list.insert(삽입할 인덱스, 삽입할 값) - 특정 위치에 원소 삽입
- list.count(3) - 리스트 내 특정 값을 가지는 데이터의 갯수 셈
- list.remove(3) - 특정 값 제거, 그 값이 여러개면 하나만 제거
728x90
'Computer Science > Python' 카테고리의 다른 글
[Python] 집합 (0) | 2021.11.23 |
---|---|
[Python] 딕셔너리(사전) (0) | 2021.11.23 |
[Python] 튜플 (0) | 2021.11.23 |
[Python] 문자열 (0) | 2021.11.23 |
[Python] 숫자형 (0) | 2021.11.16 |
댓글