파이썬에서 날짜/시간 객체에서 연도를 얻는 방법

  1. Python의 Datetime 모듈 이해하기
  2. 방법 1: year 속성 사용하기
  3. 방법 2: strftime() 메서드 사용하기
  4. 방법 3: date() 메서드 사용하기
  5. 결론
  6. FAQ
파이썬에서 날짜/시간 객체에서 연도를 얻는 방법

Python의 datetime 모듈은 날짜와 시간을 처리하기 위한 강력한 도구로, 개발자가 날짜 관련 데이터를 쉽게 조작하고 포맷할 수 있게 해줍니다. 일반적인 작업 중 하나는 datetime 객체에서 연도를 추출하는 것으로, 이는 데이터 분석, 로깅 또는 단순한 날짜 포맷 등 다양한 애플리케이션에 필수적일 수 있습니다. 이 기사에서는 Python에서 datetime 객체에서 연도를 추출하는 다양한 방법을 탐구하며, 과정에 대한 명확한 예제와 설명을 제공합니다. 초보자든 경험이 많은 프로그래머든, Python의 datetime 객체를 효율적으로 다루는 방법에 대한 귀중한 통찰을 찾을 수 있을 것입니다.

Python의 Datetime 모듈 이해하기

연도를 추출하는 방법을 알아보기 전에, datetime 모듈의 기본을 이해하는 것이 중요합니다. 이 모듈은 날짜와 시간을 조작하기 위한 클래스를 제공합니다. 가장 일반적으로 사용되는 클래스는 datetime.datetime으로, 날짜와 시간을 하나의 객체로 결합합니다.

datetime 조작을 시작하려면 먼저 모듈을 가져와야 합니다:

import datetime

모듈을 가져온 후에는 datetime 객체를 생성하고 연도를 추출할 수 있습니다.

방법 1: year 속성 사용하기

datetime 객체에서 연도를 얻는 가장 간단한 방법 중 하나는 year 속성을 사용하는 것입니다. datetime 객체를 생성하면 여러 속성(연도, 월, 일, 시, 분, 초 및 마이크로초)이 포함됩니다.

다음은 이를 수행하는 방법입니다:

import datetime

# Create a datetime object for a specific date
dt = datetime.datetime(2025, 2, 1)

# Extract the year using the year attribute
year = dt.year
print(year)

출력:

2025

year 속성은 datetime 객체의 연도 구성 요소에 직접 접근합니다. 이 방법은 간단하고 효율적이므로 빠른 추출에 적합합니다. datetime.datetime() 생성자를 사용하여 datetime 객체를 만들 때 연도, 월 및 일을 지정합니다. year 속성은 정수로 연도를 반환하며, 이를 사용하여 추가 계산이나 작업을 수행할 수 있습니다.

이 방법은 데이터 세트에서 연도별로 레코드를 필터링하거나 연간 요약이 필요한 보고서를 생성하는 등 연도를 기반으로 작업을 수행해야 할 때 특히 유용합니다. 이 방법은 문자열 또는 타임스탬프와 같은 다양한 출처에서 생성된 datetime 객체와도 원활하게 작동하며 주목할 만합니다.

방법 2: strftime() 메서드 사용하기

datetime 객체에서 연도를 추출하는 또 다른 효과적인 방법은 strftime() 메서드를 사용하는 것입니다. 이 메서드는 지정된 형식에 따라 datetime 객체를 문자열로 포맷할 수 있게 해줍니다. 연도만을 가져오려면 형식 코드 %Y를 사용할 수 있습니다.

다음은 이 방법을 시연하는 예입니다:

import datetime

# Create a datetime object for a specific date
dt = datetime.datetime(2025, 10, 1)

# Extract the year using strftime()
year = dt.strftime("%Y")
print(year)

출력:

2025

strftime() 메서드는 다재다능하며 다양한 방식으로 datetime 객체를 포맷할 수 있습니다. 형식 문자열 "%Y"를 전달함으로써, Python에게 연도만 문자열로 반환하도록 지시하는 것입니다. 이 방법은 표시 목적이나 보고서 생성을 위해 특정 형식의 연도가 필요할 때 특히 유용합니다.

또한, strftime()은 다양한 형식 코드를 사용하여 월 및 일과 같은 datetime 객체의 다른 구성 요소를 추출하는 데 사용할 수 있습니다. 예를 들어, %m은 월을 제공하고, %d는 일을 제공합니다. 이 유연성 덕분에 strftime()은 날짜 및 시간 정보를 포맷하고 조작하는 강력한 도구입니다.

방법 3: date() 메서드 사용하기

datetime 객체가 있고 두 단계를 통해 연도를 추출하고 싶다면, 먼저 date() 메서드를 사용하여 datetime 객체를 날짜 객체로 변환할 수 있습니다. 그런 다음, 결과 날짜 객체의 year 속성에 접근할 수 있습니다.

다음은 이 방법을 구현하는 방법입니다:

import datetime

# Create a datetime object for a specific date
dt = datetime.datetime(2025, 10, 1)

# Convert the datetime object to a date object
date_obj = dt.date()

# Extract the year from the date object
year = date_obj.year
print(year)

출력:

2025

이 방법에서는 먼저 date() 메서드를 사용하여 datetime 객체를 날짜 객체로 변환합니다. 날짜 객체에는 시간 구성 요소를 제외한 날짜 정보(연도, 월, 일)만 포함됩니다. 변환 후에는 날짜 객체의 year 속성에 쉽게 접근할 수 있습니다.

이 접근 방식은 시간 구성 요소를 완전히 제외하고 날짜에만 집중하고 싶을 때 특히 유용합니다. 또한 datetime 객체 대신 날짜 객체가 필요한 라이브러리나 함수와 작업할 때도 유용할 수 있습니다. 두 단계 과정은 날짜 관련 데이터를 조작할 때 더 큰 유연성을 제공합니다.

결론

Python에서 datetime 객체에서 연도를 추출하는 것은 간단한 작업이며, year 속성, strftime() 메서드 및 date() 메서드와 같은 여러 방법으로 이를 달성할 수 있습니다. 각 방법은 장점이 있으며, 어떤 방법을 사용할지는 특정 요구 사항과 프로젝트의 맥락에 따라 달라집니다. 이러한 기술을 마스터함으로써 Python 애플리케이션에서 날짜 및 시간 데이터를 효율적으로 처리하고 프로그래밍 기술을 향상시키며 전반적인 생산성을 높일 수 있습니다.

FAQ

  1. Python에서 datetime 객체란 무엇인가요?
    Python의 datetime 객체는 날짜와 시간 구성 요소를 포함하여 특정 시점을 나타냅니다. 이는 날짜와 시간 데이터를 조작하기 위한 다양한 클래스와 메서드를 제공하는 datetime 모듈의 일부입니다.
  2. Python에서 datetime 객체를 어떻게 생성하나요?
    datetime.datetime() 생성자를 사용하여 연도, 월, 일, 시, 분, 초 및 마이크로초를 필요에 따라 지정하여 datetime 객체를 생성할 수 있습니다. 예: datetime.datetime(2025, 2, 1)입니다.
  3. 유사한 방법으로 월과 일을 추출할 수 있나요?
    네, 이 기사에서 논의된 동일한 방법을 사용하여 월과 일을 추출할 수 있습니다. 예를 들어, month 속성이나 형식 코드 %m%d를 사용하는 strftime() 메서드를 사용할 수 있습니다.
  4. datetime 객체와 date 객체의 차이는 무엇인가요?
    datetime 객체는 날짜와 시간 구성 요소를 포함하는 반면, date 객체는 시간 정보 없이 날짜(연도, 월, 일)만 포함합니다. date() 메서드를 사용하여 datetime 객체를 date 객체로 변환할 수 있습니다.
  5. 문자열 날짜에서 연도를 추출할 수 있나요?
    네, 날짜의 문자열 표현을 strptime() 메서드를 사용하여 datetime 객체로 변환한 다음, 위에서 논의한 방법 중 하나로 연도를 추출할 수 있습니다.
튜토리얼이 마음에 드시나요? DelftStack을 구독하세요 YouTube에서 저희가 더 많은 고품질 비디오 가이드를 제작할 수 있도록 지원해주세요. 구독하다
작가: Fariba Laiq
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

관련 문장 - Python DateTime