TIME 모듈로 시간 알아보기
파이썬의 time 모듈은 시간을 표시하는 함수들을 가지고 있다.
>>> import time
>>> print(time.time())
1453869195.147997
time()을 호출하여 반환된 숫자는 1970년 1월 1일 00시 00분 00초 이후 지금까지의 초를 나타낸다.
>>> def lots_of_numbers(max):
t1=time.time()
for x in range(0, max):
print(x)
t2=time.time()
print("걸리는 시간은 %s 초이다" %(t2-t1))
>>> lots_of_numbers(1000)
1
...
998
999
걸리는 시간은 4.318386077880859 초이다
위 프로그램은 먼저 time()함수를 호출하고, 반환된 값을 변수 t1에 할당한다. 세번째와 네번째 줄에 있는 코드에서 모든 숫자를 출력한다. 이 루프가 끝나면 다시 time()을 호출하여 반환된 값을 t2에 할당한다. (t2-t1)을 하면 걸린 시간을 얻을 수 있다.
asctime함수는 튜플로 날짜(date)를 받아서 읽을 수 있는 어떤 것으로 변환한다.
>>> import time
>>> print(time.asctime())
Wed Jan 87 13:37:00 2016
>>> import time
>>> t=(2020, 2, 23, 10, 30, 48, 6, 0, 0)
>>> print(time.asctime(t))
Sun Feb 23 10:30:48 2020
아무런 매개변수없이 asctime을 호출하면 읽을 수 있는 형태로 현재 날짜와 시간을 표시하게 된다.
매개변수로 asctime을 호출하려면 먼저 날짜와 시간에 대한 값으로 튜플을 생성한다. t의 값은 년도, 월, 일, 시간, 분, 초, 요일(0은 월요일, 1을 화요일..), 일년 중 며칠, 일광 절약 시간인지 아닌지(아니다:0, 맞다:1)을 넣는다
LOCALTIME으로 날짜와 시간 얻기
localtime 함수는 현재 날짜와 시간을 객체로 반환합니다.
이 값들은 asctime입력 순서와 거의 동일하다.
>>> import time
>>> print(time.localtime())
## 현재 연도와 월을 출력하려면 이들의 인덱스 위치를 사용한다
time.struct_time(tm_year=2016, tm_mon=1, tm_mday=27, tm_hour=13, tm_min=38, tm_sec=32, tm_wday=2, tm_yday=27, tm_isdst=0)
>>> t=time.localtime()
>>> year=t[0]
>>> month=t[1]
>>> print(year)
2015
>>> print(month)
4
SLEEP으로 잠깐 쉬기
sleep함수는 프로그램에 약간의 딜레이를 주거나 천천히 동작하고자 할 때 매우 유용하다.
>>> for x in range(1, 61):
print(x)
time.sleep(1)
이 코드는 각 숫자가 출력되는 사이에 딜레이를 추가한다. 즉, 하나를 출력하고 1초씩 쉬라고 지정할 수 있다. 아래의 사진처럼 화면이 나오게 된다.
'python' 카테고리의 다른 글
파일 관리 (0) | 2016.01.27 |
---|---|
특수문자 사용 (0) | 2016.01.27 |
sys module (0) | 2016.01.27 |
RANDOM (0) | 2016.01.27 |
copy module (0) | 2016.01.27 |