English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Básico do Python

Controle de Fluxo do Python

Função do Python

Tipos de Dados do Python

Operações de Arquivos do Python

Objetos e Classes do Python

Data e Hora do Python

Conhecimento Avançado do Python

Manual de Referência do Python

strftime() do Python

Neste artigo, você aprenderá como converter os objetos date, time e datetime em suas strings equivalentes (por exemplo)

O método strftime() é usadodate,timeoudatetimeO objeto retorna uma string que representa a data e a hora.

Exemplo1Use strftime() para converter data e hora em string

O seguinte programa convertirá o objeto datetime contendo a data e a hora atuais em strings de diferentes formatos.

from datetime import datetime
now = datetime.now() # Data e hora atuais
year = now.strftime("%Y")
print("Ano:", year)
month = now.strftime("%m")
print("Mês:", month)
day = now.strftime("%d")
print("Dia:", day)
time = now.strftime("%H:%M:%S")
print("Tempo:", time)
date_time = now.strftime("%m")/%d/d = date_time.strftime("%Y, %H:%M:%S")
print("Data e hora:", date_time)

Quando você executar o programa, a saída será como follows:

Ano: 2020
Mês: 04
Dia: 13
Hora: 17:35:22
Data e hora: 04/13/2020, 17:35:22

Aqui,year,day,timeedate_timeé uma string, enquantonowé um objeto datetime.

Como o strftime() funciona?

No programa acima, %Y, %m, %d são códigos de formatação. O método strftime() aceita um ou mais códigos de formatação como parâmetros e retorna uma string formatada com base nesses parâmetros.

  1. Importamos a classe datetime do módulo datetime. Isso porque os objetos da classe datetime podem acessar o método strftime().

     

  2. O objeto datetime que contém a data e hora atual está armazenado emnowem

     

  3. O método strftime() pode ser usado para criar strings formatadas.

     

  4. A string que você passar para o método strftime() pode conter vários códigos de formatação.

     

Exemplo2:Criação de string com base em timestamp

from datetime import datetime
timestamp = 1578797322
date_time = datetime.fromtimestamp(timestamp)
print("Objeto de data e hora:", date_time)
d = date_time.strftime("%m/%d/d = date_time.strftime("%Y, %H:%M:%S")
print("Saída 2: "	
d = date_time.strftime("%d %b, %Y")
print("Saída 3: "
d = date_time.strftime("%d %B, %Y")
print("Saída 4: "
d = date_time.strftime("%I%p")
print("Saída 5: "

Quando o programa é executado, a saída é:

Objeto de data e hora: 2020-01-12 10:48:42
Saída 2: 01/12/2020, 10:48:42
Saída 3: 12 Jan, 2020
Saída 4: 12 Janeiro, 2020
Saída 5: 10AM

Lista de códigos de formatação

A tabela a seguir mostra todos os códigos que você pode passar para o método strftime().

InstruçãoSignificadoPor exemplo
%aAbreviação do nome do dia da semana.Dom, Seg, ...
%ANome completo do dia da semana.Domingo, Segunda-feira, ..
%wDia da semana representado como número decimal.0,1,...6
%dDia do mês, representado como número decimal preenchido com zeros.01,02,...31
%-dDia do mês representado como número decimal.1,2,...30
%bAbreviação do mês.Jan, Fev, ..., Dez
%BNome completo do mês.Janeiro, Fevereiro, ...
%mMês, número decimal preenchido com zeros.01、02,...12
%-mMês representado como número decimal.1,2,...12
%yAno sem século, número decimal preenchido com zeros.00, 01,...99
%-yAno sem século representado como número decimal.0,1,...99
%YAno representado como número decimal, com base no século.2013、2019e
%HHora (24Sistema de 24 horas), número decimal preenchido com zeros complementares.00, 01,...23
%-HHora (24O sistema horário (12h) é representado por um número decimal.0,1,...23
%IHora (12Sistema de 24 horas), número decimal preenchido com zeros.01、02,...12
%-IHora (12O sistema horário (12h) é representado por um número decimal.1 2 2
%pA manhã ou tarde do ambiente de linguagem.AM,PM
%MMinuto, número decimal preenchido com zeros.00, 01,...59
%-MRepresentado por um número decimal.0,1,...59
%SO segundo número decimal preenchido com zeros.00, 01,...59
%-SO segundo número decimal.0,1,...59
%fMicrossegundos, número decimal, preenchido à esquerda com zeros.000000-999999
%zO deslocamento UTC, formatado como+ HHMM ou-HHMM. 
%ZO nome do fuso horário. 
%jO dia do ano, representado por um número decimal preenchido com zeros.001, 002,...366
%-jO dia do ano, representado por um número decimal.1,2,...366
%UA semana do ano (o domingo é o primeiro dia da semana). Todos os dias do novo ano antes do primeiro domingo são considerados na semana 0.00, 01,...53
%WA semana do ano (o domingo é o primeiro dia da semana). Todos os dias do novo ano antes do primeiro domingo são considerados na semana 0.00, 01,...53
%cA representação apropriada de data e hora do ambiente de linguagem.Mon Sep 30 07:06:05 2019
%xA representação apropriada de data do ambiente de linguagem.13/9/30
%XA representação apropriada de tempo do ambiente de linguagem.07:06:05
%%O caractere de texto "%".%

Exemplo3:Apropriada para o ambiente de linguagem de data e hora

from datetime import datetime
timestamp = 1578797322
date_time = datetime.fromtimestamp(timestamp)
d = date_time.strftime("%c")
print("Saída 1: "	
d = date_time.strftime("%x")
print("Saída 2: "
d = date_time.strftime("%X")
print("Saída 3: "

Quando o programa é executado, a saída é:

Saída 1: Sun Jan 12 10:48:42 2020
Saída 2: 01/12/20
Saída 3: 10:48:42

Os códigos de formato %c, %x e %X são usados para representações apropriadas de data e hora do ambiente de linguagem.

Recomendamos ainda que você verifiquestrptime() do PythonA método strptime() cria um objeto datetime a partir de uma string.