1. keys(): 모든 키(key) 목록 확인
- 예제 A: 회원 ID만 추출하기
-
Python
members = {"id1": "철수", "id2": "영희", "id3": "민수"} print(members.keys()) # 출력 결과: dict_keys(['id1', 'id2', 'id3']) - 예제 B: 재고 목록의 품목 확인하기
-
Python
inventory = {"사과": 10, "바나나": 5} for item in inventory.keys(): print(f"현재 품목: {item}") # 출력 결과: # 현재 품목: 사과 # 현재 품목: 바나나
2. values(): 모든 값(value) 목록 확인
- 예제 A: 점수 평균 계산하기
-
Python
scores = {"국어": 80, "영어": 90, "수학": 100} vals = scores.values() avg = sum(vals) / len(vals) print(f"평균 점수: {avg}") # 출력 결과: 평균 점수: 90.0 - 예제 B: 전체 재고 합계 구하기
-
Python
stock = {"A": 10, "B": 20, "C": 30} print(list(stock.values())) # 출력 결과: [10, 20, 30]
3. items(): (키, 값) 쌍으로 가져오기
- 예제 A: 메뉴판 출력하기
-
Python
menu = {"커피": 3000, "주스": 4000} for name, price in menu.items(): print(f"{name}: {price}원") # 출력 결과: # 커피: 3000원 # 주스: 4000원 - 예제 B: 딕셔너리를 다른 리스트 형식으로 변환
-
Python
data = {"name": "Alice", "age": 25} print(list(data.items())) # 출력 결과: [('name', 'Alice'), ('age', 25)]
4. get(): 키를 이용해 안전하게 값 가져오기
- 예제 A: 존재하지 않는 데이터 조회
-
Python
user = {"name": "제이미"} # 대괄호[]를 쓰면 에러가 나지만, get()은 None을 반환함 print(user.get("email")) # 출력 결과: None - 예제 B: 데이터가 없을 때 기본값(Default) 지정
-
Python
settings = {"theme": "Dark"} # 'font_size'가 없으면 10을 가져오라고 설정 font_size = settings.get("font_size", 10) print(f"폰트: {font_size}") # 출력 결과: 폰트: 10
🥤 실습 과제: 나만의 미니 자판기 만들기
과제 설명: 딕셔너리를 활용하여 음료수 이름과 가격을 저장하고, 사용자가 이름을 입력하면 가격을 알려주는 프로그램을 작성하세요.
📝 문제 조건
- 메뉴 구성: 딕셔너리 변수 menu를 만들고, 최소 3개 이상의 음료와 가격을 넣으세요.
- 전체 출력: items() 메서드를 사용하여 현재 판매 중인 모든 메뉴와 가격을 화면에 출력하세요.
- 품목 확인: keys() 메서드를 사용하여 "현재 구매 가능한 품목: [사과, 배...]"와 같은 안내 메시지를 출력하세요.
- 가격 조회: 사용자에게 사고 싶은 메뉴 이름을 입력받으세요.
- 안전한 검색: get() 메서드를 사용하여 사용자가 입력한 메뉴가 있으면 가격을 출력하고, 없으면 "준비되지 않은 상품입니다"라고 출력하세요.
💡 단계별 힌트 (도움말)
- 힌트 1 (출력하기): for 이름, 가격 in menu.items(): 문법을 사용하면 딕셔너리의 내용을 예쁘게 한 줄씩 출력할 수 있어요.
- 힌트 2 (목록만 보기): menu.keys()는 그대로 출력하면 보기 힘들 수 있으니, list(menu.keys()) 처럼 리스트로 변환하면 깔끔하게 보여요.
- 힌트 3 (찾기): menu.get(입력값, "없음")을 사용해 보세요. 만약 입력한 값이 딕셔너리에 없으면 두 번째 인자인 "없음"이 반환됩니다.
- 힌트 4 (입력받기): 사용자의 입력은 input("메뉴 입력: ") 함수를 사용하세요.
'Python' 카테고리의 다른 글
| 주소록 만들기 (0) | 2025.12.24 |
|---|---|
| 간단한 자판기 프로그램 (Python) (0) | 2025.12.22 |
| VS Code 필수 편집 명령어 (0) | 2025.12.10 |
| 파이썬 기초 강의 계획안 (0) | 2025.12.06 |
| 웹 크롤링과 스크래핑, 무엇이 다를까? 쉬운 설명 (1) | 2025.05.20 |