HOWTO · Python
Python에서 현재 연도를 가져오는 방법
Python에서 여러 가지 쉬운 방법으로 올해를 얻는 방법 알아보기
이 페이지의 내용
Python 표준 라이브러리의 datetime 모듈을 사용해 현재 연도를 구할 수 있습니다. 연도를 문자열로 얻으려면 datetime.datetime.now()를 호출하고 날짜를 strftime("%Y")로 서식화하세요. 정수가 필요하면 datetime.date.today()를 호출한 뒤 year 속성을 읽으면 됩니다. 두 방법 모두 프로그램이 실행되는 컴퓨터에서 확인할 수 있는 날짜를 사용하므로, 그 컴퓨터의 날짜가 새해로 넘어가면 반환되는 연도도 바뀝니다.
strftime()로 현재 연도 구하기
strftime() 메서드는 날짜나 시간을 문자열로 서식화합니다. %Y 지시자는 연도를 네 자리 문자열로 서식화하므로, 화면에 표시하거나 다른 날짜 요소와 함께 서식화할 때 유용합니다. 다음 예시는 현재 날짜를 가져와 연도를 출력합니다.
예시를 실행해 보세요.
이 섹션의 코드와 표시되는 레이블 또는 출력은 영어로 유지됩니다.
import datetime
current_date = datetime.datetime.now().date()
current_year = current_date.strftime("%Y")
print(f"Current year: {current_year}")
Current year: 2026
여기서 datetime.datetime.now()는 현재 로컬 날짜와 시간을 제공하고, .date()는 그중 날짜 부분만 남깁니다. 해당 날짜에 strftime("%Y")를 호출하면 숫자가 아니라 문자열이 반환됩니다. 예를 들어 실행 환경의 현재 연도가 2026이라면 current_year는 문자열 "2026"입니다. 표시되는 연도는 실행 환경의 시계에 따라 달라지므로, 예시의 값이 이후 연도에도 계속 현재 연도일 것이라고 여기지 마세요. 코드 예제와 출력에 표시된 레이블은 바이트 동일성을 유지하기 위해 영어로 남아 있습니다.
다른 서식 지시자를 사용하면 날짜 정보를 더 포함할 수 있습니다. 예를 들어 %A %Y는 요일 이름 뒤에 연도를 서식화합니다. 표시되는 요일은 서식화하는 날짜에 따라 달라집니다. 사용 가능한 지시자 전체 목록과 플랫폼별 참고 사항은 strftime() 및 strptime() 서식 코드에 관한 Python 문서를 참조하세요.
year 속성으로 현재 연도 구하기
숫자 형태의 연도가 더 편리하다면 datetime.date 객체를 가져와 year 속성을 읽으세요. datetime.date.today()는 오늘 날짜를 바로 반환하므로, 이 방법은 datetime.datetime 값을 만든 다음 날짜로 변환할 필요가 없습니다.
예시를 실행해 보세요.
이 섹션의 코드와 표시되는 레이블 또는 출력은 영어로 유지됩니다.
import datetime
current_date = datetime.date.today()
current_year = current_date.year
print(f"Current year: {current_year}")
Current year: 2026
여기서 current_year의 값은 정수이며, strftime("%Y")가 반환하는 문자열과 다릅니다. 정수는 계산이나 비교에 사용하고, 화면에 표시하거나 다른 문자열과 결합할 때는 텍스트로 변환하세요. datetime.datetime.now().date()와 datetime.date.today()는 모두 year 속성을 date.year로 읽을 수 있는 날짜 객체를 반환합니다. 이미 가지고 있는 날짜 값에 맞는 표현식을 선택하세요. 예를 들어 코드에 날짜 객체가 이미 있다면 오늘 날짜를 다시 가져오는 대신 그 객체의 속성을 읽으면 됩니다. 이 속성은 해당 날짜 객체에 기록된 연도를 나타내므로, 과거나 미래의 날짜라면 현재 연도와 다를 수 있습니다.
이 예시들은 컴퓨터의 로컬 날짜를 사용합니다. 애플리케이션에서 특정 시간대의 연도가 필요하다면, 시간대 정보를 포함한 datetime에서 시작해 astimezone()으로 해당 시간대로 변환한 다음 변환된 datetime의 연도를 읽거나 서식화하세요. 새해 무렵에는 같은 순간이라도 시간대에 따라 날짜가 달라져 연도도 달라질 수 있으므로 변환이 중요합니다. 일반 date에는 시간대 정보가 없으므로, 한 시점에서 날짜를 계산하기 전에 시간대를 선택해야 합니다.