python
이전 페이지다음 페이지
Python 프로그램은 여러 가지 방법으로 날짜와 시간을 처리할 수 있습니다. 날짜 형식 간에 변환하는 것은 컴퓨터의 일반적인 작업입니다. Python의 시간 및 달력 모듈은 날짜와 시간을 추적하는 데 도움이 됩니다.
시간 간격은 초 단위의 부동 소수점 숫자입니다. 특정 순간은 1970년 1월 1일(에포크) 00:00:00시부터 초 단위로 표시됩니다.
인기 있는 시간이 있습니다. 시간 작업 및 표현 간 변환을 위한 함수를 제공하는 Python에서 사용할 수 있는 모듈입니다. time.time() 함수 1970년 1월 1일(에포크) 00:00:00시 이후의 현재 시스템 시간을 틱 단위로 반환합니다.
#!/usr/bin/python import time; # This is required to include time module. ticks = time.time() print "Number of ticks since 12:00am, January 1, 1970:", ticks
이것은 다음과 같은 결과를 생성합니다 -
Number of ticks since 12:00am, January 1, 1970: 7186862.73399
날짜 계산은 틱으로 쉽게 할 수 있습니다. 그러나 신기원 이전의 날짜는 이 형식으로 나타낼 수 없습니다. 먼 미래의 날짜도 이 방법으로 나타낼 수 없습니다. UNIX 및 Windows의 경우 컷오프 지점은 2038년 언젠가입니다.
Python의 많은 시간 함수는 아래와 같이 9개의 숫자로 구성된 튜플로 시간을 처리합니다. −
색인 | 필드 | 값 |
---|---|---|
0 | 4자리 연도 | 2008년 |
1 | 월 | 1 ~ 12 |
2 | 요일 | 1 ~ 31 |
3 | 시 | 0 ~ 23 |
4 | 분 | 0 ~ 59 |
5 | 두 번째 | 0 ~ 61(60 또는 61은 윤초임) |
6 | 요일 | 0 ~ 6(0은 월요일) |
7 | 연도의 날 | 1 ~ 366(율리우스력일) |
8 | 일광 절약 시간 | -1, 0, 1, -1은 라이브러리가 DST를 결정함을 의미합니다. |
위의 튜플은 struct_time과 동일합니다. 구조. 이 구조에는 다음과 같은 속성이 있습니다 -
색인 | 속성 | 값 |
---|---|---|
0 | tm_year | 2008년 |
1 | tm_mon | 1 ~ 12 |
2 | tm_mday | 1 ~ 31 |
3 | tm_hour | 0 ~ 23 |
4 | tm_min | 0 ~ 59 |
5 | tm_sec | 0 ~ 61(60 또는 61은 윤초임) |
6 | tm_wday | 0 ~ 6(0은 월요일) |
7 | tm_yday | 1 ~ 366(율리우스력일) |
8 | tm_isdst | -1, 0, 1, -1은 라이브러리가 DST를 결정함을 의미합니다. |
에포크 이후의 초 시점을 번역하려면 부동 소수점 값을 시간 튜플에 넣고 부동 소수점 값을 9개 항목이 모두 유효한 시간 튜플을 반환하는 함수(예:localtime)에 전달합니다.
라이브 데모#!/usr/bin/python import time; localtime = time.localtime(time.time()) print "Local current time :", localtime
이렇게 하면 다음과 같은 결과가 생성되며, 다른 표현 가능한 형식으로 서식이 지정될 수 있습니다.
Local current time : time.struct_time(tm_year=2013, tm_mon=7, tm_mday=17, tm_hour=21, tm_min=26, tm_sec=3, tm_wday=2, tm_yday=198, tm_isdst=0)
요구 사항에 따라 언제든지 형식을 지정할 수 있지만 읽을 수 있는 형식으로 시간을 가져오는 간단한 방법은 asctime() −
라이브 데모#!/usr/bin/python import time; localtime = time.asctime( time.localtime(time.time()) ) print "Local current time :", localtime
이것은 다음과 같은 결과를 낳을 것입니다 -
Local current time : Tue Jan 13 10:17:09 2009
캘린더 모듈은 연간 및 월간 캘린더를 사용할 수 있는 다양한 방법을 제공합니다. 여기에서 특정 월의 달력을 인쇄합니다(2008년 1월) −
라이브 데모#!/usr/bin/python import calendar cal = calendar.month(2008, 1) print "Here is the calendar:" print cal
이것은 다음과 같은 결과를 낳을 것입니다 -
Here is the calendar: January 2008 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
인기 있는 시간이 있습니다. 시간 작업 및 표현 간 변환을 위한 함수를 제공하는 Python에서 사용할 수 있는 모듈입니다. 다음은 사용 가능한 모든 방법의 목록입니다 -
시니어 번호 | 설명이 있는 함수 |
---|---|
1 | 시간.altzone 정의된 경우 UTC에서 서쪽으로 초 단위의 로컬 DST 시간대 오프셋입니다. 현지 DST 시간대가 UTC의 동쪽인 경우(영국을 포함한 서유럽에서와 같이) 음수입니다. 일광이 0이 아닌 경우에만 사용하십시오. |
2 | time.asctime([튜플타임]) 시간 튜플을 허용하고 'Tue Dec 11 18:07:14 2008'과 같이 읽을 수 있는 24자 문자열을 반환합니다. |
3 | 시간.시계( ) 현재 CPU 시간을 부동 소수점 초 단위로 반환합니다. 다양한 접근 방식의 계산 비용을 측정하려면 time.clock 값이 time.time() 값보다 더 유용합니다. |
4 | time.ctime([초]) asctime(localtime(secs))과 같고 인수가 없는 것은 asctime( ) |
5 | time.gmtime([초]) Epoch 이후 초 단위로 표시된 순간을 수락하고 UTC 시간과 함께 타임 튜플 t를 반환합니다. 참고:t.tm_isdst는 항상 0입니다. |
6 | time.localtime([초]) epoch 이후 초 단위로 표현된 순간을 허용하고 현지 시간과 함께 타임 튜플 t를 반환합니다(t.tm_isdst는 DST가 로컬 규칙에 따라 순간 초에 적용되는지 여부에 따라 0 또는 1임). |
7 | time.mktime(튜플타임) 현지 시간에서 타임 튜플로 표현된 순간을 받아들이고 에포크 이후 초로 표현된 순간과 함께 부동 소수점 값을 반환합니다. |
8 | 시간.수면(초) 초 동안 호출 스레드를 일시 중단합니다. |
9 | time.strftime(fmt[,tupletime]) 현지 시간의 타임 튜플로 표현된 순간을 받아들이고 문자열 fmt로 지정된 순간을 나타내는 문자열을 반환합니다. |
10 | time.strptime(str,fmt='%a %b %d %H:%M:%S %Y') 형식 문자열 fmt에 따라 str을 구문 분석하고 시간 튜플 형식으로 순간을 반환합니다. |
11 | 시간.시간( ) epoch 이후의 부동 소수점 초 수인 현재 시간을 반환합니다. |
12 | time.tzset() 라이브러리 루틴에서 사용하는 시간 변환 규칙을 재설정합니다. 환경 변수 TZ는 이것이 수행되는 방법을 지정합니다. |
기능을 간단히 살펴보겠습니다 -
time 모듈에는 다음과 같은 두 가지 중요한 속성이 있습니다.
시니어 번호 | 설명이 있는 속성 |
---|---|
1 | 시간.시간대 time.timezone 속성은 UTC(미주에서는>0, 대부분의 유럽, 아시아, 아프리카에서는 <=0)에서 현지 시간대(DST 제외)의 오프셋(초)입니다. |
2 | time.tzname time.tzname 속성은 각각 DST가 없는 지역과 DST가 있는 지역 시간대의 이름인 로케일 종속 문자열 쌍입니다. |
달력 모듈은 특정 월 또는 연도의 텍스트 달력을 인쇄하는 기능을 포함하여 달력 관련 기능을 제공합니다.
기본적으로 달력은 월요일을 주의 첫째 요일로 사용하고 일요일을 마지막 요일로 사용합니다. 이를 변경하려면 calendar.setfirstweekday() 함수를 호출하세요.
다음은 캘린더에서 사용할 수 있는 기능 목록입니다. 모듈 -
시니어 번호 | 설명이 있는 함수 |
---|---|
1 | calendar.calendar(연도,w=2,l=1,c=6) c 공백으로 구분된 3개의 열로 형식화된 연도 달력이 있는 여러 줄 문자열을 반환합니다. w는 각 날짜의 문자 너비입니다. 각 줄의 길이는 21*w+18+2*c입니다. l은 각 주의 줄 수입니다. |
2 | calendar.firstweekday( ) 매주 시작되는 요일의 현재 설정을 반환합니다. 기본적으로 캘린더를 처음 가져올 때 월요일을 의미하는 0입니다. |
3 | calendar.isleap(년) 연도가 윤년이면 True를 반환합니다. 그렇지 않으면 거짓입니다. |
4 | calendar.leapdays(y1,y2) 범위(y1,y2) 내 연도의 총 윤일 수를 반환합니다. |
5 | calendar.month(년,월,w=2,l=1) 연도의 월에 대한 달력이 있는 여러 줄 문자열을 반환합니다. 주당 한 줄에 두 개의 헤더 줄을 더한 것입니다. w는 각 날짜의 문자 너비입니다. 각 줄의 길이는 7*w+6입니다. l은 각 주의 줄 수입니다. |
6 | calendar.monthcalendar(년,월) int 목록의 목록을 반환합니다. 각 하위 목록은 주를 나타냅니다. 연도 중 월 월 이외의 날은 0으로 설정됩니다. 해당 월의 날짜는 1 이상으로 설정됩니다. |
7 | calendar.monthrange(년,월) 두 개의 정수를 반환합니다. 첫 번째는 연도의 월 1일에 대한 요일 코드입니다. 두 번째는 해당 월의 일 수입니다. 요일 코드는 0(월요일) ~ 6(일요일)입니다. 월 숫자는 1에서 12까지입니다. |
8 | calendar.prcal(연도,w=2,l=1,c=6) Calendar.calendar(year,w,l,c)를 인쇄하는 것과 같습니다. |
9 | calendar.prmonth(년,월,w=2,l=1) Calendar.month(년,월,w,l)를 인쇄하는 것과 같습니다. |
10 | calendar.setfirstweekday(평일) 각 주의 첫째 요일을 요일 코드 요일로 설정합니다. 요일 코드는 0(월요일) ~ 6(일요일)입니다. |
11 | calendar.timegm(튜플타임) time.gmtime의 역:시간 튜플 형식의 시간 인스턴스를 허용하고 epoch 이후의 부동 소수점 초 수와 동일한 순간을 반환합니다. |
12 | calendar.weekday(년,월,일) 주어진 날짜의 요일 코드를 반환합니다. 요일 코드는 0(월요일) ~ 6(일요일)입니다. 월 숫자는 1(1월)에서 12(12월)까지입니다. |
관심이 있으시면 여기에서 Python에서 날짜와 시간을 다루는 다른 중요한 모듈 및 함수 목록을 찾을 수 있습니다. −
날짜/시간 모듈
피츠 모듈
날짜 유틸리티 모듈
python
구성품 및 소모품 Arduino UNO × 1 DHT11 온도 및 습도 센서(4핀) × 1 Maxim 통합 DS3231 × 1 저항 10k 옴 × 1 Adafruit 128x64 OLED 그래픽 디스플레이 × 1 브레드보드(일반) × 1 점퍼 와이어(일반) × 15 이 프로젝트 정보 온도와 습도와 함께 시간, 날짜를 표시할 수 있는 인터페이스를 만들고 싶었던 적이 있습니까? 생각보다
구성품 및 소모품 Arduino UNO × 1 Adafruit Standard LCD - 파란색 바탕에 16x2 흰색 × 1 LCD용 I2C 모듈 × 1 실시간 시계(RTC) × 1 SparkFun 푸시버튼 스위치 12mm × 3 저항 10k 옴 × 3 점퍼 와이어(일반) × 1 이 프로젝트 정보 소개 이 시계는 많은 내 프로젝트의 기초입니다. 저는 2012년에 튜토리얼을