15.3.2 프로그램 기능 구현하기
이번에는 13장 코드를 기반으로 프로그램 기능 부분을 수정해 봅시다..
파일 읽기
가장 먼저 인구 분석에 필요한 파일을 읽어야 하죠. 파일을 읽는 file_open() 함수를 화면에 맞게 수정해 보겠습니다. 화면 구현 부분과 프로그램 기능 구현 부분을 분리하기 위해(코드의 가독성이 좋아집니다) 에디터에서 tkinter 화면을 만드는 코드를 작성한 셀 위에 셀을 하나 추가하고 file_open()을 작성합니다. 13장에서 만든 함수와 같으니 그대로 복사해도 됩니다.
import csv
# ----- 프로그램 기능 부분 -----
def file_open():
f = open('LOCAL_PEOPLE_DONG_201912.csv', encoding='utf8') # 또는 'eur-kr', 'cp949'
data = csv.reader(f)
next(data)
data = list(data)
f2 = open('dong_code.csv', encoding = 'cp949') # 또는 'eur-kr', 'utf8'
code_data = csv.reader(f2)
next(code_data)
next(code_data)
code_data = list(code_data)
for row in data:
for i in range(1, 32):
if i <= 2:
row[i] = int(row[i])
else:
row[i] = float(row[i])
for row in code_data:
row[1] = int(row[1])
return data, code_data