Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> python

Dominando o Módulo time do Python: Funções, Structs e Exemplos Práticos

Módulo time do Python

Explore o módulo padrão time do Python, aprenda suas funções principais e veja exemplos claros que demonstram uso real.

O módulo time do Python fornece ferramentas para trabalhar com timestamps, agendamento e medição de tempo decorrido. Antes de usar qualquer função, importe o módulo:

import time

time.time()

A função time() retorna a hora atual em segundos desde a época Unix (00:00:00 UTC em 1 de janeiro de 1970). Em sistemas Unix-like, esse valor de época é fixo; no Windows, é derivado do mesmo ponto.

import time
seconds = time.time()
print("Segundos desde a época =", seconds)

time.ctime()

Converte um timestamp POSIX (segundos desde a época) em uma string legível no fuso horário local.

import time
seconds = 1545925769.9618232
local_time = time.ctime(seconds)
print("Hora local:", local_time)

Saída típica:

Hora local: Thu Dec 27 15:49:29 2018

time.sleep()

Atrasa a execução da thread atual pelo número especificado de segundos.

import time
print("Isto é impresso imediatamente.")
time.sleep(2.4)
print("Isto é impresso após 2.4 segundos.")

Para mais detalhes, consulte a documentação do Python sleep().


Classe time.struct_time

Funções como gmtime() e asctime() retornam ou aceitam um objeto time.struct_time, uma tupla de 9 elementos representando um tempo de calendário.

time.struct_time(tm_year=2018, tm_mon=12, tm_mday=27, tm_hour=6, tm_min=35, tm_sec=17, tm_wday=3, tm_yday=361, tm_isdst=0)
ÍndiceAtributoValores
0tm_year0000 … 9999
1tm_mon1 … 12
2tm_mday1 … 31
3tm_hour0 … 23
4tm_min0 … 59
5tm_sec0 … 61
6tm_wday0 (Seg) … 6 (Dom)
7tm_yday1 … 366
8tm_isdst0, 1 ou -1

Você pode acessar elementos tanto por índice quanto por nome de atributo.


time.localtime()

Converte um timestamp POSIX em um struct_time expresso no fuso horário local. Se omitido, usa a hora atual.

import time
result = time.localtime(1545925769)
print("resultado:", result)
print("\nano:", result.tm_year)
print("tm_hour:", result.tm_hour)

Saída típica:

resultado: time.struct_time(tm_year=2018, tm_mon=12, tm_mday=27, tm_hour=15, tm_min=49, tm_sec=29, tm_wday=3, tm_yday=361, tm_isdst=0)
ano: 2018
tm_hour: 15

time.gmtime()

Igual ao localtime(), mas retorna tempo UTC (GMT). Argumento omitido usa o valor de época atual.

import time
result = time.gmtime(1545925769)
print("resultado:", result)
print("\nano:", result.tm_year)
print("tm_hour:", result.tm_hour)

Saída típica:

resultado: time.struct_time(tm_year=2018, tm_mon=12, tm_mday=28, tm_hour=8, tm_min=44, tm_sec=4, tm_wday=4, tm_yday=362, tm_isdst=0)
ano: 2018
tm_hour: 8

time.mktime()

Converte um struct_time local (ou sua tupla de 9 elementos) de volta em um timestamp POSIX. É efetivamente o inverso de localtime().

import time
t = (2018, 12, 28, 8, 44, 4, 4, 362, 0)
local_time = time.mktime(t)
print("Hora local:", local_time)

Exemplo mostrando a viagem de ida e volta:

import time
seconds = 1545925769
t = time.localtime(seconds)
print("t1:", t)
s = time.mktime(t)
print("\ns:", s)

Saída típica:

t1: time.struct_time(tm_year=2018, tm_mon=12, tm_mday=27, tm_hour=15, tm_min=49, tm_sec=29, tm_wday=3, tm_yday=361, tm_isdst=0)
s: 1545925769.0

time.asctime()

Formata um struct_time (ou tupla) em uma string legível.

import time
t = (2018, 12, 28, 8, 44, 4, 4, 362, 0)
result = time.asctime(t)
print("Resultado:", result)

Saída típica:

Resultado: Fri Dec 28 08:44:04 2018

time.strftime()

Formata um struct_time em uma string personalizada baseada em códigos de formato.

import time
named_tuple = time.localtime()
time_string = time.strftime("%m/%d/%Y, %H:%M:%S", named_tuple)
print(time_string)

Saída típica:

12/28/2018, 09:47:41

Códigos de formato comuns incluem:

Para mais códigos de formato, consulte a documentação do time.strftime().


time.strptime()

Analisa uma string de acordo com um formato especificado e retorna um struct_time.

import time
time_string = "21 June, 2018"
result = time.strptime(time_string, "%d %B, %Y")
print(result)

Saída típica:

time.struct_time(tm_year=2018, tm_mon=6, tm_mday=21, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=172, tm_isdst=-1)

python

  1. Palavras-chave e Identificadores em Python: Dominando Palavras Reservadas e Convenções de Nomenclatura
  2. Dominando Tipos de Dados em Python: Guia Prático
  3. Dominando Operadores em Python: Guia Completo
  4. Dominando Argumentos de Funções em Python: Parâmetros Posicionais, Nomeados e Padrão
  5. Módulos em Python: Criação, Importação e Uso Avançado
  6. Dominando Dicionários em Python: Criação, Manipulação e Técnicas Avançadas
  7. Expressões Regulares em Python (Módulo re) – Guia Prático
  8. Obter Data e Hora Atuais em Python: Guia Prático
  9. Python: Obter Hora Atual e Dados de Fuso Horário com Facilidade
  10. Dominando time.sleep() do Python: Boas Práticas, Multithreading e Exemplos Reais