오 오늘 100번까지 풀었다 음하하 꾸준히! 합시다 (나한테 하는 말임)
091 ~ 100
.answer {margin-top: 10px;margin-bottom: 50px;padding-top: 10px;border-top: 3px solid LightGray;bo…
wikidocs.net
# 2024 02 23
print('-'*80)
# 091
# 키는 아이스크림, 값은 가격과 재고를 나타내는 리스트인 딕셔너리 생성
inventory = {'메로나': [300, 20],
'비비빅': [400, 3],
'죠스바': [250, 100]}
print(inventory)
# 092
# 메로나 가격 출력
print("메로나 가격: %d원" % inventory['메로나'][0])
# 093
# 메로나 재고 출력
print("메로나 재고: %d개" % inventory['메로나'][0])
# 094
# 딕셔너리 데이터 추가
inventory['월드콘'] = [500, 7]
print(inventory)
# 095
# 딕셔너리의 key값으로만 구성된 리스트 생성
icecream = {'탱크보이': 1200, '폴라포': 1200, '빵빠레': 1800, '월드콘': 1500, '메로나': 1000}
ice_key = list(icecream.keys())
print(ice_key)
# 096
# 딕셔너리의 value값으로만 구성된 리스트 생성
ice_value = list(icecream.values())
print(ice_value)
# 097
# 아이스크림 판매 총합 출력
ice_total = sum(ice_value)
print("판매 총합: %d원" % ice_total)
# 098
# new_product 딕셔너리를 icecream 딕셔너리에 추가
new_product = {'팥빙수':2700, '아맛나':1000}
icecream.update(new_product)
print(icecream)
# 099
# 두 개의 튜플을 하나의 딕셔너리로 변환
keys = ("apple", "pear", "peach")
vals = (300, 250, 400)
result = dict(zip(keys, vals))
print(result)
# 100
# 두 개의 리스트를 하나의 딕셔너리로 변환
date = ['09/05', '09/06', '09/07', '09/08', '09/09']
close_price = [10500, 10300, 10100, 10800, 11000]
close_table = dict(zip(date, close_price))
print(close_table)

내가 몰랐던 문법
1. 딕셔너리 인덱싱
딕셔너리 인덱싱은 키를 사용하여 값에 접근하는 것을 의미한다. 만약 딕셔너리의 값이 리스트라면 리스트 안의 값에 대한 접근 방법은 일반적인 리스트 접근 방법과 동일하다. 해당 키 값을 가져온 후에 리스트 인덱싱을 사용해 리스트의 요소에 접근하는 것이다.
2. keys(), values()
딕셔너리의 keys() 메서드는 딕셔너리에 있는모든 키를 반환한다. 이 메서드를 호출하면 딕셔너리의 키들이 모두 담긴 리스트가 반환된다. 반면 values() 메서드는 딕셔너리에 있는 모든 값을 반환한다. keys() 메서드와 마찬가지로 이 메서드를 호출하면 딕셔너리의 값들이 모두 담긴 리스트가 반환된다.
3. list(), tuple(), dict()
값을 추출하여 리스트, 튜플, 딕셔너리의 형태로 만들고자 할 때는 각각의 형태에 맞는 내장 함수를 사용하여 변환할 수 있다.
list() : 리스트로 변환
tuple() : 튜플로 변환
dict() : 딕셔너리로 변환
4. update()
딕셔너리의 update() 메서드는 한 딕셔너리의 키-값 쌍을 다른 딕셔너리에 추가하거나 업데이트할 때 사용된다. 추가할 딕셔너리에 이미 같은 키가 있다면 해당 키의 값을 업데이트하고, 없는 키라면 새로운 키-값 쌍을 추가하는것이다.
5. zip()
zip() 함수는 여러 개의 순회 가능한(이터러블) 객체를 받아서 각 객체로부터 하나씩 요소를 가져와 튜플의 형태로 묶은 후 이 튜플들로 이루어진 이터레이터를 반환한다.
keys = ("apple", "pear", "peach")
vals = (300, 250, 400)
result = dict(zip(keys, vals))
zip(keys, vals) 코드는 keys와 vals의 각 요소를 하나씩 묶은 튜플로 이루어진 이터레이터를 반환한다. 그 후 이터레이터로부터 받은 키-값 쌍을 사용해 새로운 딕셔더니를 생성한다.
6. 이터레이터
파이썬에서 순회 간으한 객체의 요소를 순차적으로 접근할 수 있는 방법을 제공하는 객체이다.
'PYTHON > 초보자를 위한 파이썬 300제' 카테고리의 다른 글
| 07. 파이썬 분기문 111~120 (0) | 2024.03.01 |
|---|---|
| 07. 파이썬 분기문 101 ~ 110 (0) | 2024.02.24 |
| 06. 파이썬 딕셔너리 081 ~ 090 (0) | 2024.02.22 |
| 05. 파이썬 튜플 071 ~ 080 (0) | 2024.02.21 |
| 04. 파이썬 리스트 061 ~ 070 (0) | 2024.02.20 |