과정 2.1.1까지는 익숙한 코드죠. 과정 2.1.2와 2.1.3은 if-else 문으로 표현할 수 있습니다. spending 딕셔너리의 키에 가맹점명 store가 없다면 {키:값}이 {store:payment}인 요소를 추가하고, 키에 store가 있다면 해당 요소에 이용금액 payment를 더합니다. 모든 이용내역에 대해 이 과정을 반복하면 가맹점명과 이용금액을 키-값으로 하는 spending 딕셔너리를 완성할 수 있습니다. 여기까지 작성해 봅시다.
spending = {}
for row in data:
if row[-1] == '전표매입':
store, payment = row[-4], int(row[-3])
if store not in spending.keys():
spending[store] = payment
else:
spending[store] += payment
print(spending)
실행결과
{'GS샵': 60440, 'G마켓': 201630, '11번가': 151010, '네이버파이낸셜(주)': 1395840, '(주)에이랜드 타임스퀘어': 31600, '(주)곱': 96000, '카카오페이(택시)': 78000, '포도당': 75000, …}
가맹점명과 해당 가맹점에서 지출한 금액이 쌍을 이룬 긴 딕셔너리가 출력됩니다.