[Education]/[Python] 파이썬을 이용한 자동화 스크립트

[Python] 21. 파이썬 날짜 다루기, 스케쥴링, 프로세스 - time모듈, datetime 모듈, timedelta, strftime, subprocess 모듈

starterr 2024. 12. 6. 15:30

1. time 모듈

 

- 날짜와 시간을 표현하는 형식은 너무도 다양함
- time 모듈 : 절대시간(epoch 타임)을 다루는 모듈
- datetime 모듈 : 시간을 보기 좋게 표현하는 방식에 대한 모듈

 

1) time.time() 함수

- 1970.01.01. 00:00:00 → 에포크 타임스탬프
- 에포크로부터의 경과시간을 숫자(float 타입)로 표시
- round(time.time())으로 소수점을 없애서 사용 가능

 

- now = time.time()
- time.ctime(now)
- time.localtime(now)
- time.gmtime(now)

 

 

2) 시간끼리 비교 가능

- time.time()의 숫자로 비교 ( 즉 미래가 과거보다 크다 )

 

3) 데모

- 실행시간 계산 예제

실행시간 계산 예제
실행시간 계산 예제

 

 

4) time.sleep() 함수

- 프로그램을 잠시 중지할 필요가 있을 때 사용

> time.sleep(second) : 해당 second(초) 만큼 프로그램이 일시 중지
> KeyboardInterrupt 예외를 처리해서 Ctrl+C 키를 눌렀을 때 종료 가능

time.sleep() 함수
time.sleep() 함수

 

 

2. Datetime 모듈

 

1) datetime 모듈의 주요 4개 객체

- date : 년, 월, 일
- time : 시, 분, 초, 마이크로초
- datetime : 날짜와 시간
- timedelta : 날짜 와/또는 시간 간격

 

2) date

- 년, 월, 일을 지정하여 date 객체를 만들 수 있다.

- 각 값은 속성으로 접근할 수 있다.

date
date

 

3) time

- 하루의 시간을 나타내는 데 사용한다.

- 인자를 입력하지 않으면 0 으로 간주한다.

time
time

 

4) datetime

- 날짜와 시간을 모두 포함한다.

>>> from datetime import datetime
>>> some_day = datetime(2050, 1, 2, 3, 4, 5, 6)

 

- iso 포맷 메소드
>>> some_day.isoformat()

 

- now() 메소드로 현재 날짜를 얻을 수 있다.
>>> now = datetime.now()

 

 

5) timedelta를 통해 시간 간격을 계산할 수 있다.

- 현재부터 1000일 후
>>> now = datetime.now()
>>> dday = timedelta(days=1000)
>>> theday = now + dday

 

 

6) 특정 날짜까지 프로그램 중지

특정 날짜까지 프로그램 중지
특정 날짜까지 프로그램 중지

 

 

7) datetime 객체를 문자로 바꾸기

- strftime() 함수로 보기 좋은 포맷으로 변경

strftime() 함수
strftime() 함수

 

 

3. 다른 프로그램 실행

1) subprocess 모듈 사용

- subprocess.Popen() : 애플리케이션 실행

subprocess 모듈 사용
subprocess 모듈 사용

 

- 다른 파이썬 스크립트 실행

subprocess 모듈 사용
subprocess 모듈 사용

 

- 기본 프로그램으로 파일 열기

subprocess 모듈 사용
subprocess 모듈 사용

 

- 다른 파이썬 스크립트 실행

subprocess 모듈 사용
subprocess 모듈 사용

 


 

 

[TIP] 윈도우 복원지점 만들기 & 윈도우 복원하기

 

[TIP] 윈도우 복원지점 만들기 & 윈도우 복원하기

A. 윈도우 복원지점 만들기 / 윈도우 복원하기컴퓨터를 사용하시다 보면 문제가 발생되어 초기화를 진행해야 하는 경우가 종종 발생합니다.​컴퓨터 포맷을 할 경우 모든 데이터 및 프로그램이

infoofit.tistory.com

 

[Fortinet] Fortigate Session TTL 설정 방법

 

[Fortinet] Fortigate Session TTL 설정 방법

A. Fortigate Session TTL 설정 방법 Fortigate에서는 global, policy, service에 대해 session ttl 설정이 가능합니다. 1) global에서 session ttl 변경CLI > config system session-ttl 진입 default 설정은 3600초이며 위 이미지 내

infoofit.tistory.com

 

[TIP] 구글 크롬(Google Chrome) 언어 설정 및 변경 (한국어<->영어)

 

[TIP] 구글 크롬(Google Chrome) 언어 설정 및 변경 (한국어<->영어)

A. 구글 크롬 언어설정 및 변경(한국어, 영어) 영어로 되어있는 크롬 기본언어 설정을 한글로 변경하고 싶으신 분들을 위해서 글을 작성합니다. 1) 개인 계정 구글 설정으로 들어가기! 그러

infoofit.tistory.com

 

 

반응형