Como obter o ano de um objeto datetime em Python
- Entendendo o Módulo Datetime do Python
-
Método 1: Usando o Atributo
year
-
Método 2: Usando o Método
strftime()
-
Método 3: Usando o Método
date()
- Conclusão
- FAQ

O módulo datetime do Python é uma ferramenta poderosa para manipular datas e horários, permitindo que os desenvolvedores manipulem e formate dados relacionados a datas facilmente. Uma tarefa comum é extrair o ano de um objeto datetime, o que pode ser essencial para várias aplicações, como análise de dados, registro de informações ou até mesmo formatação simples de datas. Este artigo irá explorar diferentes métodos para extrair o ano de um objeto datetime em Python, fornecendo exemplos claros e explicações para guiá-lo através do processo. Seja você um iniciante ou um programador experiente, encontrará insights valiosos sobre como trabalhar de forma eficiente com objetos datetime em Python.
Entendendo o Módulo Datetime do Python
Antes de mergulhar nos métodos de extração do ano, é essencial entender os conceitos básicos do módulo datetime. Este módulo fornece classes para manipular datas e horários. A classe mais comumente usada é datetime.datetime
, que combina tanto a data quanto a hora em um único objeto.
Para começar a manipulação de datetime, você primeiro precisa importar o módulo:
import datetime
Uma vez que você tenha importado o módulo, pode criar objetos datetime e começar a extrair o ano.
Método 1: Usando o Atributo year
Uma das maneiras mais simples de obter o ano de um objeto datetime é usando o atributo year
. Quando você cria um objeto datetime, ele contém vários atributos, incluindo ano, mês, dia, hora, minuto, segundo e microsegundo.
Veja como fazer isso:
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)
Saída:
2025
O atributo year
acessa diretamente o componente do ano do objeto datetime. Este método é direto e eficiente, tornando-o ideal para extrações rápidas. Quando você cria um objeto datetime usando o construtor datetime.datetime()
, você especifica o ano, o mês e o dia. O atributo year
retorna o ano como um número inteiro, que você pode usar em cálculos ou operações futuras.
Este método é particularmente útil quando você precisa realizar operações baseadas no ano, como filtrar registros por ano em um conjunto de dados ou gerar relatórios que requerem resumos anuais. Também vale a pena notar que este método funciona perfeitamente com objetos datetime criados a partir de várias fontes, incluindo strings ou timestamps.
Método 2: Usando o Método strftime()
Outra maneira eficaz de extrair o ano de um objeto datetime é usando o método strftime()
. Este método permite que você formate objetos datetime como strings com base em um formato especificado. Para recuperar apenas o ano, você pode usar o código de formato %Y
.
Aqui está um exemplo demonstrando este método:
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)
Saída:
2025
O método strftime()
é versátil e pode formatar objetos datetime de várias maneiras. Ao passar a string de formato "%Y"
, você instrui o Python a retornar apenas o ano como uma string. Este método é particularmente útil quando você precisa do ano em um formato específico, como para fins de exibição ou ao gerar relatórios.
Além disso, o strftime()
pode ser usado para extrair outros componentes do objeto datetime, como mês e dia, usando diferentes códigos de formato. Por exemplo, %m
fornece o mês e %d
fornece o dia. Essa flexibilidade faz do strftime()
uma ferramenta poderosa para formatar e manipular informações de data e hora.
Método 3: Usando o Método date()
Se você tem um objeto datetime e deseja extrair o ano através de um processo em duas etapas, você pode primeiro converter o objeto datetime em um objeto date usando o método date()
. Depois disso, você pode acessar o atributo year
do objeto date resultante.
Aqui está como implementar este método:
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)
Saída:
2025
Neste método, primeiro convertemos o objeto datetime em um objeto date usando o método date()
. O objeto date contém apenas as informações de data (ano, mês e dia) e exclui o componente de hora. Após a conversão, podemos facilmente acessar o atributo year
do objeto date.
Esta abordagem é particularmente útil quando você deseja descartar completamente o componente de hora e se concentrar apenas na data. Também pode ser benéfico ao trabalhar com bibliotecas ou funções que exigem objetos date em vez de objetos datetime. O processo em duas etapas permite maior flexibilidade ao manipular dados relacionados a datas.
Conclusão
Extrair o ano de um objeto datetime em Python é uma tarefa simples, e há vários métodos para alcançar isso, incluindo o uso do atributo year
, do método strftime()
e do método date()
. Cada método tem suas vantagens, e a escolha de qual usar depende de suas necessidades específicas e do contexto de seu projeto. Ao dominar essas técnicas, você pode lidar de forma eficiente com dados de data e hora em suas aplicações Python, aprimorando suas habilidades de programação e melhorando sua produtividade geral.
FAQ
- O que é um objeto datetime em Python?
Um objeto datetime em Python representa um ponto específico no tempo, incluindo componentes de data e hora. Ele faz parte do módulo datetime, que fornece várias classes e métodos para manipular dados de data e hora. - Como eu crio um objeto datetime em Python?
Você pode criar um objeto datetime usando o construtordatetime.datetime()
, especificando o ano, mês, dia, hora, minuto, segundo e microsegundo conforme necessário. Por exemplo:datetime.datetime(2025, 2, 1)
. - Posso extrair o mês e o dia usando métodos semelhantes?
Sim, você pode extrair o mês e o dia usando os mesmos métodos discutidos neste artigo. Por exemplo, você pode usar o atributomonth
ou o métodostrftime()
com os códigos de formato%m
para mês e%d
para dia. - Qual é a diferença entre um objeto datetime e um objeto date?
Um objeto datetime inclui tanto os componentes de data quanto os de hora, enquanto um objeto date contém apenas a data (ano, mês, dia) sem nenhuma informação de hora. Você pode converter um objeto datetime em um objeto date usando o métododate()
. - É possível extrair o ano de uma data em formato de string?
Sim, você pode converter uma representação em string de uma data em um objeto datetime usando o métodostrptime()
, e então extrair o ano usando qualquer um dos métodos discutidos acima.
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