Converter DateTime em String com Milissegundos em Python

Manav Narula 30 janeiro 2023
  1. Use o método strftime() para formatar DateTime em string
  2. Use o método isoformat() para formatar DateTime para String
  3. Use a função str() para formatar DateTime em string
Converter DateTime em String com Milissegundos em Python

O módulo datetime em Python nos permite criar objetos de data e hora facilmente manipulados e convertidos para diferentes formatos.

Este tutorial cobrirá como converter um objeto datetime em uma string contendo milissegundos.

Use o método strftime() para formatar DateTime em string

O método strftime() retorna uma string baseada em um formato específico especificado como string no argumento.

from datetime import datetime

date_s = datetime.now().strftime("%Y-%m-%d %H:%M:%S.%f")

print(date_s)

Resultado:

2021-01-23 02:54:59.963001
Nota
Se apenas import datetime, teríamos que usar datetime.datetime.now() para obter a data-hora atual.

O %Y-%m-%d %H:%M:%S.%f é o formato da string. O método now() retorna um objeto datetime.datetime da data e hora atuais. Observe que a saída final tem microssegundos que podem ser facilmente truncados para milissegundos. Por exemplo:

from datetime import datetime

date_s = datetime.now().strftime("%Y-%m-%d %H:%M:%S.%f")[:-3]

print(date_s)

Resultado:

2021-01-23 03:00:29.052

Use o método isoformat() para formatar DateTime para String

O método isoformat() da classe datetime retorna uma string que representa a data no formato ISO 8601. Podemos especificar o caractere que separa a data e a hora como ' ' usando o parâmetro sep e o parâmetro timespace que determina o componente de tempo como milliseconds.

from datetime import datetime

date_s = datetime.now().isoformat(sep=" ", timespec="milliseconds")

print(date_s)

Resultado:

2021-01-23 03:15:35.322

Use a função str() para formatar DateTime em string

Podemos passar diretamente o objeto datetime para a função str() para obter a string no formato padrão de data e hora. Este método é mais rápido do que os métodos acima, mas podemos especificar o formato da string.

Também podemos simplesmente remover os últimos três dígitos da string para obter o resultado final em milissegundos.

from datetime import datetime

t = datetime.now()
date_s = str(t)[:-3]

print(date_s)

Resultado:

2021-01-23 05:56:26.266
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artigo relacionado - Python DateTime