1. 리스트
리스트란 파이썬에서 가장 자주 사용되는 데이터 구조 중 하나이다. 대괄호 [ ]를 사용해 만들 수 있다. 여러 값을 순서대로 담을 수 있고 각 값은 쉼표로 구분된다.
my_list = [1, 2, 3, 4, 5]
print(my_list) # 출력: [1, 2, 3, 4, 5]
-----------------------------------------------------------------------------------------------
# 첫 번째 요소에 접근하기
first_number = numbers[0]
print("First number:", first_number)
-----------------------------------------------------------------------------------------------
# 마지막 요소에 접근하기
last_number = numbers[-1]
print("Last number:", last_number)
- 리스트의 다양한 메서드(Methods)
Methods | 설명 | 예시 |
my_list = [1, 2, 3, 4, 5] | ||
append() | 리스트에 항목을 추가 | my_list.append(6) |
extend() | 리스트에 다른 리스트 모든 항목을 추가 | my_list.extend([7, 8, 9]) |
insert() | 리스트의 특정 위치에 항목 삽입 | my_list.insert(2, 10) |
remove() | 리스트에서 특정 값을 삭제 | my_list.remove(3) |
pop() | 리스트에서 특정 위치의 값을 제거하고 반환 | popped_value = my_list.pop(5) |
index() | 리스트에서 특정 값의 인덱스를 찾음 | print(my_list.index(4)) |
count() | 스트에서 특정 값의 개수를 세어줌 | print(my_list.count(7)) |
sort() | 리스트의 항목을 정렬 | my_list.sort() |
reverse() | 리스트의 항목들을 역순으로 뒤집어줌 | my_list.reverse() |
- 리스트 값 삭제 및 변경
# 리스트의 항목 삭제
del my_list[0]
print("첫 번째 항목 삭제 후 리스트:", my_list)
-----------------------------------------------------------------------------------------------
# 리스트 내 값들의 모든 항목 제거
my_list.clear()
print("모든 항목 제거 후 리스트:", my_list)
-----------------------------------------------------------------------------------------------
# 리스트 값 변경하기
my_list = ['apple', 'banana', 'cherry', 'date', 'elderberry']
my_list[3] = 'dragonfruit'
print(my_list) # 출력: ['apple', 'banana', 'cherry', 'dragonfruit', 'elderberry']
- 인덱싱
# 중첩된 리스트에서 인덱싱하기
nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(nested_list[1][0]) # 출력: 4 (두 번째 리스트의 첫 번째 항목)
- 슬라이싱
설명 | 예시 |
일부분만 추출 | print(my_list[2:5]) |
시작 인덱스 생략 (처음부터 추출) | print(my_list[:5]) |
끝 인덱스 생략 (끝까지 추출) | print(my_list[5:]) |
음수 인덱스 사용 (뒤에서부터 추출) | print(my_list[-3:]) |
간격 설정 (특정 간격으로 추출) | print(my_list[1:9:2]) |
리스트 전체를 복사 | copy_of_list = my_list[:] |
리스트를 거꾸로 뒤집기 | reversed_list = my_list[::-1] |
- 정렬
sort() 메서드는 리스트의 항목들을 정렬하는 데 사용된다. 기본적으로 숫자와 문자열에 대해서는 오름차순으로 정렬되며, 리스트의 항목들이 동일한 형태일 경우에만 정렬된다.
reverse는 정렬 순서를 지정한다. 기본값은 False로 오름차순을 의미하며, True로 설정하면 내림차순으로 정된다.
# 내림차순으로 리스트 정렬 예시
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5]
numbers.sort(reverse=True)
print("내림차순으로 정렬된 리스트:", numbers) # 출력: [9, 6, 5, 5, 4, 3, 2, 1, 1]
2. 튜플
튜플이란 변경할 수 없는 시퀀스 자료형으로 여러 개의 요소를 저장하는 컨테이너이다. 리스트와 유사하지만 한 번 생성된 이후에는 요소를 추가, 삭제, 수정할 수 없어 데이터를 보호하고 싶을 때 주로 사용된다. 튜플은 소괄호 ()를 사용하여 생성하며, 각 요소는 쉼표로 구분된다.
tuple1 = (1, 2, 3)
tuple2 = ('a', 'b', 'c')
-----------------------------------------------------------------------------------------------
# 두 개의 튜플을 합치기
new_tuple = tuple1 + tuple2
print(new_tuple)
-----------------------------------------------------------------------------------------------
# 튜플을 반복하기
repeated_tuple = tuple1 * 3
print(repeated_tuple)
-----------------------------------------------------------------------------------------------
# 튜플을 리스트로 변경하기
my_tuple = (1, 2, 3, 4, 5)
my_list = list(my_tuple)
print(my_list) # 출력: [1, 2, 3, 4, 5]
-----------------------------------------------------------------------------------------------
# 리스트를 튜플로 변경하기
my_list = [1, 2, 3, 4, 5]
my_tuple = tuple(my_list)
print(my_tuple) # 출력: (1, 2, 3, 4, 5)
3. 딕셔너리
딕셔너리란 키(Key) - 값(Value) 쌍의 데이터를 저장하는 자료구조로 중괄호 {}를 사용한다. 각 키는 유일해야 하지만 값은 중복될 수 있다.
# 학생 성적표
grades = {
'Alice': 90,
'Bob': 85,
'Charlie': 88
}
-----------------------------------------------------------------------------------------------
# 접근하기
print(grades['Alice']) # 출력: 90
-----------------------------------------------------------------------------------------------
# 값 수정하기
grades['Bob'] = 95
-----------------------------------------------------------------------------------------------
# 요소 추가하기
grades['David'] = 78
-----------------------------------------------------------------------------------------------
# 요소 삭제하기
del grades['Charlie']
- 딕셔너리에서 자주 사용되는 메서드
Methods | 설명 | 예시 |
my_dict = {'name': 'John', 'age': 30, 'city': 'New York'} |
||
keys() | 모든 키를 dict_keys 객체로 반환 | keys = my_dict.keys() |
values() | 모든 값을 dict_values 객체로 반환 | values = my_dict.values() |
items() | 모든 키-값 쌍을 (키, 값) 튜플로 구성된 dict_items 객체로 반환 | items = my_dict.items() |
get() | 지정된 키에 대한 값을 반환합니다. 키가 존재하지 않으면 기본값을 반환 | age = my_dict.get('age') |
pop() | 지정된 키와 해당 값을 딕셔너리에서 제거하고 값을 반환 | city = my_dict.pop('city') |
popitem() | 딕셔너리에서 마지막 키-값 쌍을 제거하고 반환 | last_item = my_dict.popitem() |
'Today I Learned (TIL) > Python' 카테고리의 다른 글
[TIL] 데이터 분석 파이썬 종합반 - 4주차 (1) | 2024.07.08 |
---|---|
[TIL] 데이터 분석 파이썬 종합반 - 3주차 (0) | 2024.07.05 |
[TIL] 데이터 분석 파이썬 종합반 - 1주차 (0) | 2024.07.04 |
[TIL] Python 정리 (0) | 2024.07.01 |
[TIL] 파이썬 문법 기초 - 1주차 심화 (0) | 2024.06.27 |