python 6

[python, 프로그래머스] lv3: 추석 트래픽 (datetime)

https://programmers.co.kr/learn/courses/30/lessons/17676 step_f) or (end[i] max_cnt: max_cnt=count answer = max_cnt return answer 풀이 방법: 어떻게 최소 구간의 계산만으로 최대값을 찾느냐가 관건이었다. 각 프로세스의 시작, 끝나는 시간에서 1초 전까지의 구간들에 대해서 최대 처리량을 계산했다. 주의할 점: 1초 간격이라고 해서 딱 1초 빼면 안되고, 0.999sec만 빼줘야 한다. 간격 계산(더하기 빼기 수학 ㅠㅠ) 잘하기! Datetime datetime.datetime.strptime으로 문자열 시간을 datetime.time 자료형으로 변경할 ..

[python] Logger class, timezone Seoul

Logger Class 모델을 돌리며 터미널의 출력들을 txt 또는 log 파일로 저장하고 싶으면서, 동시에 터미널에서도 실시간으로 확인하고 싶을 때 Logger class를 사용하면 된다. 내가 사용하는 Logger 코드는 다음과 같다. class Logger(object): def __init__(self): td = datetime.datetime.now(timezone('Asia/Seoul')) file_name = td.strftime('%m-%d_%H.%M') + ".log" self.terminal = sys.stdout self.log = open(file_name, "a") def write(self, temp): self.terminal.write(temp) self.log.write(..

python 2022.05.27

[python] Iterator slicing

Iterator class의 객체를 슬라이싱 하는 방법을 알아보자! Iterator를 사용함으로서 모든 요소를 저장할 필요가 없어 CPU 메모리를 절약할 수 있고, 코드를 깔끔하게 만들 수 있다. 자세한 설명은 위 사진 source 링크 참조 딥러닝 사용 예: Autoencoder에서 encoder부분만 필요해서, 학습된 모델에서 encoder부분 parameter만 뽑아내고 싶다. 이 때 파라미터들은 loaded_model.parameters() 에 저장되어 있는데, parameters()는 iterator 형식이다. 즉, for문을 통해 각 객체에 접근할 수 있는 type이다. 따라서 encoder 부분만 slicing하기 위해서는, 먼저 itertools 모듈을 import해야 한다. import ..

python 2021.12.24