리스트 자료형

- 여러 개의 데이터를 연속적으로 담아 처리하기 위해 사용
- 리스트 대신 배열 혹은 테이블로 불리기도 함
1. 리스트 자료형 초기화
#직접 데이터를 넣어 초기화
a = [1, 2, 3, 4]
# [1, 2, 3, 4]
#네 번째 원소만 출력
print(a[3])
# 4
#크기가 N이고, 모든 값이 0 인 1차원 리스트 초기화
n = 4
a = [0] * n
print(a)
# [0, 0, 0, 0]
#반목문을 이용해서 초기화
array = [i for i in range(4)]
print(array)
# [0, 1, 2, 3]
# 0 ~ 9까지 홀수만 포함하는 리스트
array = [i for i in range(10) if i % 2 == 1]
print(array)
# [1, 3, 5, 7, 9]
# 1 ~ 4까지 수 들의 제곱 값 리스트
array = [i * i for i in range(1, 5)]
print(array)
# [1, 4, 9, 16]
#2차원 리스트 초기화
n = 4
m = 3
array = [[0] * m for _ in range(n)]
print(array)
#[[0,0,0], [0,0,0], [0,0,0], [0,0,0]]
2. 인덱싱(Indexing)
a = [1, 2, 3, 4]
#두 번째 원소만 출력
print(a[1])
# 2
#뒤에서 첫 번째 원소 출력
print(a[-1])
# 4
3. 슬라이싱(Slicing)
a = [1, 2, 3, 4]
#두 번째 원소부터 네 번째 원소까지
print(a[1:4])
#[2, 3, 4]
4. 리스트 관련 메서드

a = [1, 2, 3, 4]
a.append(5)
# [1, 2, 3, 4, 5]
a.sort()
# [1, 2, 3, 4, 5]
a.sort(reverse = True)
# [5, 4, 3, 2, 1]
a.reverse()
# [1, 2, 3, 4, 5]
a.insert(0, 1)
# 인데스 0에 1추가
# [1, 1, 2, 3, 4, 5]
a.remove(3)
# [1, 1, 2, 4, 5]
a.count(1)
# 2
a = [1, 2, 3, 4]
remove_set = {1, 3}
result = [i for i in a if i not in remove_set]
print(result)
# [2, 4]
튜플 자료형
- 한 번 선언된 값을 변경할 수 없음
- ( ) 소괄호를 이용
- 리스트에 비해 상대적으로 공간효율적
+ ) 튜플을 사용하면 좋은 경우
- 서로 다른 성질의 데이터를 묶어서 관리해야 할 때 (ex. 최단 경로 알고리즘)
- 데이터의 나열을 해싱(Hashing)의 키 값으로 사용해야 할 때
- 리스트보다 메모리를 효율적으로 사용해야 할 때
1. 튜플 초기화
#튜플 초기화
a = (1, 2, 3, 4)
# 첫 번째 원소만 출력
print(a[0])
# 1
# 두 번째 원소부터 네번째 원소까지
print(a[1:4])
# (2, 3, 4)
문자열 자료형
data = 'Hello World'
# Hello World
data = "Don't you know \"Python\"?"
# Don't you know "Python"?
a = "Hello"
b = "World"
print(a + " " + b)
# Hello World
a = "String"
print(a * 2)
#StringString
a = "ABCDEF"
print(a[2:4])
#CD
'Algorithm' 카테고리의 다른 글
알고리즘 기초 및 파이썬 기초 문법(5) - 입출력, 조건문과 반복문 (0) | 2022.03.25 |
---|---|
알고리즘 기초 및 파이썬 기초 문법(4) - 사전, 집합 자료형 (0) | 2022.03.25 |
알고리즘 기초 및 파이썬 기초 문법(2) - 수 자료형 (0) | 2022.03.25 |
알고리즘 기초 및 파이썬 기초 문법(1) - 알고리즘 기초 (0) | 2022.03.25 |
그래프 탐색 알고리즘 DFS & BFS, Backtracking(백트래킹) (2) (0) | 2022.03.18 |