티스토리 뷰

python lecture/project

[python] 시간변환

burningrizen 2020. 5. 27. 12:38

시간 데이타 파일

더보기

22 25 0
5 30 195
17 40 200
17 15 210
0 40 -50
8 40 -200
22 10 -50
2 15 910
23 20 100
10 50 -20
8 40 200

 

data.txt
0.00MB

 

결과

더보기

22:25
8:45
21:0
20:45
23:50
5:20
21:20
17:25
1:0
10:30
12:0

 

 

output.txt
0.00MB

 

 

 

 

 

 

 

def read_file(path):
    with open(path, "r") as f:
        return f.readlines()


def write_file(path, lines):
    with open(path, "w") as f:
        f.writelines(lines)


def lines_to_rows(lines):
    rows = list(map(lambda x: x.replace("\n", "").split(" "), lines))
    for i, row in enumerate(rows):
        rows[i] = list(map(int, rows[i]))
    return rows


def row_to_time(row):
    hours, mins = row[0], row[1]+row[2]
    final_hours = mins // 60 + hours
    final_mins = mins % 60
    if final_hours > 24:
        final_hours -= 24
    if final_hours < 0:
        final_hours += 24
    return final_hours, final_mins


def convert(rows):
    times = []
    for i, row in enumerate(rows):
        time = row_to_time(row)
        times.append(f"{i+1}: time={time[0]}:{time[1]}")
    return "\n".join(times)


lines = read_file("data.txt")
rows = lines_to_rows(lines)
times = convert(rows)
write_file("reuslt.txt", times)

'python lecture > project' 카테고리의 다른 글

[python] 지하철 승하차 기록 조회  (0) 2020.06.07
[python] n 진수 바꾸기  (0) 2020.06.03
[python] 스테가노그래피  (0) 2020.05.25
[python] 남/여 균일 매칭  (0) 2020.05.25
[python] # 연산 하기  (0) 2020.05.11
댓글