더북(TheBook)

그런데 이렇게 코드를 작성하고 실행했더니 오류가 발생합니다.

실행 결과

------------------------------------------------------------
ZeroDivisionError                         Traceback (most recent call last)
<ipython-input-6-852b60f527e2> in <module>()
 8     for i in range(4,8):
 9         row[i] = int(row[i])
---> 10     rate = row[4]/ row[6]
 11     if rate > mx :
 12         mx = rate
ZeroDivisionError:division by zero

에러 메시지를 보니 0으로 값을 나눴다고 하네요. 아마 row[6] 값이 0인 역이 있는 것 같습니다. 다음과 같이 코드를 조금 수정해서 데이터를 확인했더니 row[6] 값이 0인 역들이 출력됩니다.

if row[6] == 0 :
    print(row)

 

실행 결과

['2019-01', '경원선', '1022', '창동', 19, 0, 0, 0]
['2019-01', '분당선', '1031', '복정', 25, 0, 0, 0]
['2019-01', '일산선', '1949', '지축', 2, 0, 0, 0]
['2019-01', '경의선', '1291', '서울역', 11, 0, 0, 0]
['2019-01', '경의선', '1293', '홍대입구', 2, 0, 0, 0]
['2019-01', '경의선', '1295', '김포공항', 10, 0, 0, 0]
['2019-01', '경의선', '1296', '계양', 7, 0, 0, 0]
['2019-01', '경의선', '1297', '검암', 5, 0, 0, 0]

TIP

실행 결과는 데이터를 받은 시기에 따라서 달라질 수 있습니다. 원활한 학습을 위해 가급적 2019년 1월 데이터를 기준으로 먼저 실습해 보세요.

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