728x90
반응형
import csv
file = open('./subwaytime.csv')
data = csv.reader(file)
lst = []
for d in data: # 데이터 리스트에 추가
# print(d)
lst.append(d)
file.close()
max_h18 = 0 # 18시간대의 승객수
max_h18_name = '' # 18시간대의 역명
max_h19 = 0
max_h19_name = ''
max_h20 = 0
max_h20_name = ''
max_h21 = 0
max_h21_name = ''
max_h22 = 0
max_h22_name = ''
max_h1822 = 0
max_h1822_name = ''
# for i in range(len(lst[20:32])): # 데이터가 수백개여서 눈으로 확인 어려움. 10개만 확인(검증시 사용)
for i in range(len(lst)):
if i < 2: continue # 0,1 데이터 즉 처음 2개 row는 시간대와 승하차 정보로 제외
name = lst[i][1] + '_' + lst[i][2] + '_' + lst[i][3] # 역명을 호선+번호+역명으로 함
a18 = int(lst[i][33].replace(',','')) # 33 번째가 18시 하차 승객수
a19 = int(lst[i][35].replace(',',''))
a20 = int(lst[i][37].replace(',',''))
a21 = int(lst[i][39].replace(',',''))
a22 = int(lst[i][41].replace(',',''))
if max_h18 < a18: # 현재 row의 18식간대의 승객수가 18시간대 max 승객수보다 그면
max_h18 = a18 # 18시간대 max 승객수 변수에 저장
max_h18_name = name # max 일때 역명도 저장
if max_h19 < a19:
max_h19 = a19
max_h19_name = name
if max_h20 < a20:
max_h20 = a20
max_h20_name = name
if max_h21 < a21:
max_h21 = a21
max_h21_name = name
if max_h22 < a22:
max_h22 = a22
max_h22_name = name
max_h = max(a18, a19, a20, a21, a22)
if max_h1822 < max_h:
max_h1822 = max_h
max_h1822_name = name
print(f"{a18:>10}, {a19:>10}, {a20:>10}, {a21:>10}, {a22:>10}, {max_h:>10} : {name:40}")
print('-'*30)
print('> 18시 :',max_h18_name)
print('> 19시 :',max_h19_name)
print('> 20시 :',max_h20_name)
print('> 21시 :',max_h21_name)
print('> 22시 :',max_h22_name)
print('> 18~22시 :',max_h1822_name)
728x90
반응형
'프로그램' 카테고리의 다른 글
[파이썬] 문제 : pandas에서 컬럼 데이터 중복, 조건 출력, 컬럼간 비교 (0) | 2023.04.02 |
---|---|
[파이썬] 문제 : 학색들의 임의의 자리 배치 (0) | 2023.04.02 |
[파이썬] 문제 : 불교의 불기(기준년도) 계산 (0) | 2023.04.01 |
[파이썬] 문제 : 입력된 sec(초)로 시간,분,초 계산(math floor함수) (0) | 2023.04.01 |
[파이썬] 문제 : 입력된 수에 floor 함수 (0) | 2023.04.01 |
댓글