과제 내용 : Chatper 9 Quiz 9 풀고 인증 글 남기기
모두를 위한 파이썬(PY4E) 9장 (딕셔너리)의 주요 내용은 다음과 같습니다.
1. 딕셔너리의 기능과 특징:
- 키(key)와 값(value)의 쌍을 저장하는 파이썬의 데이터 컬렉션.
- 다양한 데이터베이스 연산을 빠르게 수행.
※ 컬렉션이란 ?
2. 리스트와 딕셔너리 비교:
- 리스트는 원소의 위치를 기반으로 인덱스 매김.
- 딕셔너리는 키를 통해 값에 접근하고 순서가 없음.
3. 딕셔너리 생성:
- {} 또는 dict()를 사용하여 생성.
purse = dict()
purse['money'] = 12
purse['candy'] = 3
purse['tissues'] = 75
print(purse)
print(purse['candy'])
purse['candy'] = purse['candy'] + 2
print(purse)
[출력 결과]
{'money': 12, 'tissues': 75, 'candy': 3}
3
{'money': 12, 'tissues': 75, 'candy': 5}
4. 딕셔너리와 카운팅(일반적인 활용):
- 이름, 단어 등을 세는 데 사용.
- get() 메서드로 기본값 설정 및 카운트 증가.
5. 딕셔너리 오류 처리:
- 존재하지 않는 키에 접근 시 오류 발생.
- `in` 연산자로 키 존재 여부 확인.
counts = dict()
names = ['csev', 'cwen', 'csev', 'zqian', 'cwen']
for name in names :
if name not in counts:
counts[name] = 1
else :
counts[name] = counts[name] + 1
print(counts)
[출력 결과]
{'csev': 2, 'zqian': 1, 'cwen': 2}
# get() 활용 간소화 코드
counts = dict()
names = ['csev', 'cwen', 'csev', 'zqian', 'cwen']
for name in names :
counts[name] = counts.get(name, 0) + 1
# get(name, 0) : 키가 counts에 없을 때 0 반환
print(counts)
[출력 결과]
{'csev': 2, 'zqian': 1, 'cwen': 2}
6. 딕셔너리와 루프:
- for 문을 사용하여 딕셔너리의 모든 원소 접근.
- 키와 값 목록 검색 가능.
jjj = { 'chuck' : 1 , 'fred' : 42, 'jan': 100}
print(list(jjj)) # key 출력
print(jjj.keys())
print(jjj.values())
print(jjj.items())
[출력결과] #
['jan', 'chuck', 'fred']
dict_keys(['chuck', 'fred', 'jan'])
dict_values([1, 42, 100])
dict_items([('chuck', 1), ('fred', 42), ('jan', 100)])
jjj = { 'chuck' : 1 , 'fred' : 42, 'jan': 100}
for aaa,bbb in jjj.items() :
print(aaa, bbb)
[출력 결과]
chuck 1
fred 42
jan 100
Quiz 결과
#9기문과생도AI