더북(TheBook)

이 코드에서 다음 문장이 조금 어렵게 느껴질 수도 있는데요.

f = open('seoul.csv', 'r', encoding='cp949')
data = csv.reader(f, delimiter=',')

이 두 줄을 해석해 보면, 첫 번째 줄은 seoul.csv 파일을 읽기 모드(read)로 읽어오되 cp949라는 형식(Windows 한글 인코딩 방식)으로 읽어오라는 의미입니다. 두 번째 줄은 첫 번째 줄 코드를 통해 읽어온 CSV 파일 데이터를 콤마(,)를 기준으로 분리해서 저장하라는 의미입니다. 여기서 delimiter는 '구분자'라는 뜻입니다.

복잡해 보이지만, 이는 파이썬에서 기본으로 지정한 기본값이므로 생략이 가능합니다. 기본값을 생략하면 다음과 같이 간단히 쓸 수 있습니다.

f = open('seoul.csv')
data = csv.reader(f)

훨씬 간단해졌네요. 앞으로 이 책에서는 계속 윈도의 기본 인코딩 방식으로 데이터를 활용할 것이므로 이처럼 기본값을 생략하고 간단하게 표현하겠습니다. 하지만 경우에 따라 다른 인코딩 형식을 지정해야 할 때도 있다는 것을 기억하세요.

icon_wait

 

윈도가 아닌 다른 운영체제를 사용할 경우

만약 macOS, 리눅스 등 윈도우가 아닌 다른 운영체제에서 이 책에서 제공하는 예제 데이터를 사용할 경우에는 encoding='cp949' 부분을 반드시 입력해야 합니다. 반대로 다른 운영체제에서 작성된 CSV 파일을 윈도 운영체제에서 다룰 때는 encoding='utf8'이라고 작성해야 한글 문자가 깨지지 않습니다. 여기에서 utf8은 UTF-8을 의미하며, 이는 어느 국가의 문자라도 표현할 수 있도록 만든 유니코드를 표시하는 문자 인코딩 방식 중 하나입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.