더북(TheBook)

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
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.