이 강의를 읽기 전 파이썬 강의 - 3. 변수와 자료형을 간단하게나마 읽고 오길 추천한다.
리스트와 튜플
리스트와 튜플은 여러 개의 항목을 담아 데이터 구조를 만들 수 있는 자료형(Type)으로 파이썬에서 가장 자주 사용되는 데이터 구조 중 하나다.
목차
리스트(List)
순서가 있는 자료형이면서 같은 요소를 중복하여 넣을 수 있다. 포함되어 있는 요소들을 변경할 수 있으며 대괄호를 사용하여 정의한다.
#list type
furits = ['apple', 'banana', 'lemon']
colors = ['red', 'green', 'blue']
age = [20, 31, 16, 15]
여기서 요소란 list 변수 안에 있는 apple, banana, 20, 31 같은 것들을 뜻한다.
특징
가변성 - 요소를 추가, 삭제, 수정 가능
인덱싱 - 인덱스를 사용하여 각 요소에 접근가능
반복문 - for 문을 사용하여 리스트의 모든 요소에 접근 가능
활용가능한 메서드들 - list에는 많은 내장 메서드가 있어서 쉽게 요소 추가, 삭제, 정렬 등의 작업 가능
용도
- 동적으로 데이터를 추가하거나 변경해야 할 때
- 자료의 순서가 중요할 때
- 요소의 중복이 필요할 때
튜플(Tuple)
list와 같은 자료형이지만, 요소들을 변경할 수 없다는 특징이 있다. 소괄호를 사용하여 정의한다.
#Tuple Type
furits = ('apple', 'banana', 'lemon')
colors = ('red', 'green', 'blue')
age = (20, 31, 16, 15)
특징
불변성 - 한 번 정의된 Tuple의 요소들은 추가, 삭제, 수정이 불가능
인덱싱 - 리스트와 마찬가지로 인덱스를 사용하여 요소에 접근은 가능
메모리 사용 - list보다 메모리 사용이 적어 더 빠르게 처리 가능
보호 - 요소를 변경할 수 없기에 데이터를 고정시켜 보호 가능
용도
- 데이터 변경을 방지할 때
- 딕셔너리의 키로 사용되어야 할 때(딕셔너리의 키는 불변해야 한다.)
- 함수에서 다수의 값을 반환해야 할 때
List와 Tuple의 기능
List의 기능
.append()
- List의 끝에 요소를 추가
num = [1,2,3]
num.append(4) # 'num' list 끝에 '4'요소 추가
print(num) #[1,2,3,4]
.insert()
- 특정 인덱스에 요소를 추가 (인덱스는 0부터 첫 번째 자리)
num = [1,2,3]
num.insert(2, 6) # 2번째 인덱스에 '6' 추가
print(num) # [1,2,6,3]
.remove()
- 특정 값을 가진 제일 앞에 있는 요소를 제거
num = [1,2,4,6,2]
num.remove(2) # 맨 앞에 있는 '2'를 제거
print(num) #[1,4,6,2]
인덱싱(indexing)
- List의 각 요소에 접근
num = [1, 2, 3, 4]
print(num[2]) # 3, 'num' List의 2번째 Index 출력
슬라이싱(Slicing)
- List의 일부분을 잘라냄
num = [1, 2, 3, 4, 5, 6, 7]
print(num[2:5]) # [3,4,5], 'num' List 2번째 index부터 5번째 index 전까지 잘라냄
.sort()
- 순서대로 정렬(숫자는 0부터 ~, 문자열은 사전순)
num = [1,5,3]
color = ['red', 'blue', 'green']
num.sort() #'num' list의 정수들을 숫자 순으로 정렬
color.sort() #'color' list의 문자열들을 사전 순으로 정렬
print(num) #1,3,5
print(color) #blue, green, red
.reverse(), sort(reverse=True)
- revese()는 맨 뒤에 있는 요소를 맨 앞으로 옮기고, sort(reverse=True)는 요소들을 역순으로 정렬
num = [2,3,1,4]
num.reverse()
print(num) #4, 2, 3, 1
num.sort(reverse=True)
print(num) #4, 3, 2, 1
Tuple의 기능
인덱싱(indexing)
- List와 똑같이 각 요소에 접근
num = (1, 2, 3)
print(num[1]) #2
언패킹(Unpacking)
- Tuple의 요소들을 각각 변수에 할당
num = (1, 4)
a,b = num
print(a) #1
print(b) #4
List와 Tuple의 공통 기능
len()
- 길이를 반환
num = [1,2,3]
color = ['red', 'blue', 'green', 'yellow']
print(len(num)) #3
print(len(color)) #4
index()
- 특정 값의 index 반환
num = [1, 2, 3]
name = ('john', 'nick', 'jamseon')
print(num.index(1)) # 0
print(name.index('john')) # 0
for문에서의 활용
num = [1,2,3]
drink = ('juice', 'beer', 'soju')
for numbers in num:
print(numbers)
#1
#2
#3
for menu in drink:
print(menu)
#juice
#beer
#soju
'Python > Python 기초' 카테고리의 다른 글
파이썬 강의 8. - 딕셔너리(Dictionary)와 세트(Set) (0) | 2024.06.16 |
---|---|
파이썬 강의 - 6. 함수(2) (1) | 2024.06.10 |
파이썬 강의 - 6. 함수(1) (1) | 2024.06.09 |
파이썬 강의 - 5. 조건문과 반복문 (1) | 2024.06.09 |
파이썬 강의 - 4. 연산자 (1) | 2024.06.09 |