# 날짜, 시간 다루기
# 날짜는 기본적으로 float 형식, 1970년 1월 1일을 기준시로 사용
import time
import datetime
import subprocess
now = time.time() # float 타입
print(now)
now = round(time.time()) # 소수점 제거
print(now)
now = time.ctime() # 문자형 날짜
print(now)
now = time.localtime() # 로컬 타임, struct_time
print(now)
print(now.tm_year) # 년도, 2022
now = time.gmtime() # 그리니치 타임
print(now)
출력값은
1642230948.963247
1642230949
Sat Jan 15 07:15:48 2022
time.struct_time(tm_year=2022, tm_mon=1, tm_mday=15, tm_hour=7, tm_min=15, tm_sec=48, tm_wday=5, tm_yday=15, tm_isdst=0)
2022
time.struct_time(tm_year=2022, tm_mon=1, tm_mday=15, tm_hour=7, tm_min=15, tm_sec=48, tm_wday=5, tm_yday=15, tm_isdst=0)
날짜 처리, 1000일 후 날짜 구하기
white = datetime.date(2022, 3, 14)
print(white)
print(white.year, white.month, white.day)
print(white.isoformat())
bedtime = datetime.time(23, 35, 45)
print(bedtime)
print(bedtime.hour, bedtime.minute, bedtime.second)
now = datetime.datetime.now()
print(now)
dday = datetime.timedelta(days=1000)
theday = now + dday # 1000 일 후
print(theday)
beforeday = now - dday # 1000 일 전
print(beforeday)
출력값은
2022-03-14
2022 3 14
2022-03-14
23:35:45
23 35 45
2022-01-15 07:15:50.984257
2024-10-11 07:15:50.984257
2019-04-21 07:15:50.984257
1초간격으로 10번 반복하기
for i in range(10):
time.sleep(1)
print(i)
출력값
0
1
2
3
4
5
6
7
8
9
특정 날짜 시간까지 프로그램 중지, 1초 간격으로 확인, 그 날짜 시간이 되었을때 화면 출력
wakeup_time = datetime.datetime(2022, 2, 1, 9, 00, 00)
while datetime.datetime.now() < wakeup_time:
time.sleep(1)
print("The sul is passed !!")
datetime객체를 문자로 바꾸기
wc8 = datetime.datetime(2002, 6, 22, 15, 30, 0)
str_wc8 = wc8.strftime('%Y/%m/%d %H:%M:%S')
print(str_wc8) # 2002/06/22 15:30:00
다른 프로그램 실행
subprocess.Popen('C:\\Windows\\System32\\calc.exe') # 계산기 실행
subprocess.Popen(['python.exe', 'test\\hello.py']) # 파이썬 프로그램 실행, test폴더에 있는 hello.py 파일 열기
subprocess.Popen(['start','hello.txt'], shell=True) # txt 확장자의 기본 프로그램 실행
수행시간 확인
def calc_prod():
# 실행시간 체크 예제
# 10만번 반복 계산
product = 1
for i in range(1, 100000):
product = product + 1
return product
def main():
start = time.time()
prod = calc_prod()
end = time.time()
print('수행 결과값은 {}'.format(str(prod)))
print('수행 시간 : {}'.format((end - start)))
소스 링크
https://replit.com/@dhshin38/Tutorial-Python#date_schedule_process.py
'Python' 카테고리의 다른 글
Python 정규식 (0) | 2022.01.15 |
---|---|
Python list, tuple, dictionary, 리스트, 튜플, 딕셔너리 (0) | 2022.01.15 |
Python 숫자, 문자, type (0) | 2022.01.15 |
Python 특징 (0) | 2022.01.15 |
Python 개발 환경 (0) | 2022.01.15 |