레슨 2 / 9·20분
리스트와 딕셔너리
리스트 (List)
리스트는 순서가 있는 변경 가능한(mutable) 데이터 모음입니다. 대괄호 []로 생성하며, 다양한 타입의 요소를 포함할 수 있습니다.
python
# 리스트 생성과 조작
fruits = ["사과", "바나나", "포도"]
fruits.append("딸기") # 끝에 추가
fruits.insert(1, "오렌지") # 인덱스 1에 삽입
fruits.remove("바나나") # 값으로 삭제
print(fruits) # ['사과', '오렌지', '포도', '딸기']
# 슬라이싱
numbers = [0, 1, 2, 3, 4, 5]
print(numbers[1:4]) # [1, 2, 3]
print(numbers[::2]) # [0, 2, 4] — 2칸 간격
print(numbers[::-1]) # [5, 4, 3, 2, 1, 0] — 뒤집기
# 리스트 컴프리헨션
squares = [x ** 2 for x in range(6)]
print(squares) # [0, 1, 4, 9, 16, 25]
evens = [x for x in range(10) if x % 2 == 0]
print(evens) # [0, 2, 4, 6, 8]딕셔너리 (Dictionary)
딕셔너리는 키-값 쌍으로 이루어진 데이터 구조입니다. 중괄호 {}로 생성하며, 키를 통해 빠르게 값을 조회할 수 있습니다.
python
# 딕셔너리 생성
student = {
"name": "김철수",
"age": 20,
"scores": [90, 85, 92]
}
# 값 접근
print(student["name"]) # 김철수
print(student.get("email", "없음")) # 없음 (기본값)
# 수정과 추가
student["age"] = 21
student["email"] = "kim@test.com"
# 순회
for key, value in student.items():
print(f"{key}: {value}")
# 딕셔너리 컴프리헨션
word_lengths = {word: len(word) for word in ["hello", "world", "python"]}
print(word_lengths) # {'hello': 5, 'world': 5, 'python': 6}💡
dict.get(key, default)를 사용하면 키가 없을 때 KeyError 대신 기본값을 반환합니다. 안전하게 값을 조회할 때 유용합니다.