2019. 4. 21. 17:03ㆍ파이썬
time 모듈 : 절대시간(epoch 타임 : 1970.1.1기준)을 다루는 모듈
datetime 모듈 : 시간을 보기좋게 표현하는 방식에 대한 모듈
now = time.time()#epoch 타임스탬프
time.ctime(now) #사람들이 좀 더 쉽게 읽을 수 있는 시간
time.localtime(now) #컴퓨터의 시간
time.gmtime(now) #세계 표준시
##실행시간 계산 예제
import time
def calc_prod():
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('The result is {}'.format(len(str(prod))))
print('Took {} seconds to calculate.'.format(end-start))
if __name__ == __main__:
main()
#잠시 정지
for i in range(30):
time.sleep(1)#1초동안 sleep
print(i)
#시간 객체(datetime 모듈안에 포함된 객체들)
1)date 객체 : 년, 월, 일
---------------------------------
from datetime import date
white = date(2017, 3, 14)
print(white)
print(white.month)
print(white.day)
print(white.year)
print(white.isoformat())#'2017-03-14'
---------------------------------
2)time : 시, 분, 초, 마이크로초
---------------------------------
from datetime import time
bedtime = time(22, 35, 45)
print(bedtime)
print(bedtime.hour)
print(bedtime.minute)
print(bedtime.second)
---------------------------------
3) datetime : 날짜와 시간
---------------------------------
from datetime import datetime
someday = datetime(2050,1,2,3,4,5)
someday.isoformat() #표준 형식
now = datetime.now() #현재시간
---------------------------------
4) timedelta : 날짜 와/또는 시간간격
---------------------------------
now = datetime.now()
dday = timedelta(days=1000)
theday = now + dday
---------------------------------
** 특정날짜까지 프로그램 중지
import datetime
import time
wakeup_time = datetime.datetime(2020, 10, 31, 0, 0, 0)
while datetime.datetime.now() < wakeup_time:
time.sleep(1)
** datetime 객체를 문자로(strftime())
wc8 = datetime.datetime(2002, 6, 22, 15, 30, 0)
wc8.strftime('%Y/%m/%d %H:%M:%S')
wc8.strftime('%I:%M:%p')#03:30 PM
wc8.strftime('%B of %y') #June of '02
%m
%d
%H : hour
%M : month
* 다른 프로그램 실행(subprocess)
#windows
import subprocess
subprocess.Popen('C:\\Windows\\System32\\calc.exe')
#Ubuntu
import subprocess
subprocess.Popen('/usr/bin/gnome-calculator')
#다른 파이썬 실행(상대경로, 절대 경로 모두 가능)
import subprocess
subprocess.Popen(['c:\\Python34\\python.exe', 'hello.py'])
#기본 프로그램으로 파일 열기
import subprocess
subprocess.Popen(['start', 'hello.txt'], shell=True)
#
import subprocess
subprocess.Popen(['python.exe', 'hello.py'])
#예제
import time
import subprocess
import logging
logging.basicConfig(level=logging.DEBUG, format='%asctime)s - %(levelname)s - %(message)s')
def countdown(sec):
time_left = sec
while time_left > 0:
logging.debug(time_left)
time.sleep(1)
time_left -= 1
def main():
howmany_sec = 3
countdown(howmany_sec)
subprocess.Popen(['start', 'alarm.wav'], shell=True)
if __name__ == '__main__':
main()
'파이썬' 카테고리의 다른 글
IMAP을 통한 메일 확인 (3) | 2019.04.21 |
---|---|
SMTP로 메일 보내기(GMail) (0) | 2019.04.21 |
MSSQL 연동시 (0) | 2019.04.20 |
엑셀 파일 읽고 쓰기 (0) | 2019.04.15 |
파일 관련 기본들 (0) | 2019.04.09 |