Python: Obtener Hora Actual y Datos de Zona Horaria Fácilmente
Python: Obtener Hora Actual y Datos de Zona Horaria Fácilmente
Descubre formas fiables de obtener la hora local actual y trabajar con múltiples zonas horarias en Python, usando los módulos estándar datetime y time, así como la popular librería pytz.
Python ofrece varios métodos directos para acceder a la hora actual. A continuación se muestran ejemplos prácticos que ilustran cada enfoque, con explicaciones claras de lo que hace cada fragmento de código.
Ejemplo 1: Hora Actual Usando el Módulo datetime
from datetime import datetime
now = datetime.now()
current_time = now.strftime("%H:%M:%S")
print("Hora Actual =", current_time)
Salida
Hora Actual = 07:41:19
En este ejemplo, el método datetime.now() devuelve un objeto datetime que contiene la fecha y hora actuales. La función strftime() formatea ese objeto en una cadena de hora legible.
Para obtener un objeto time que represente solo la parte de la hora, usa el método time() en la misma instancia de datetime:
from datetime import datetime
now = datetime.now().time() # objeto time
print("now =", now)
print("tipo(now) =", type(now))
Salida
now = 07:43:37.457423 tipo(now) = <class 'datetime.time'>
Ejemplo 2: Hora Actual Usando el Módulo time
Para aplicaciones que solo necesitan la hora local actual, el módulo integrado time es una alternativa ligera:
import time
t = time.localtime()
current_time = time.strftime("%H:%M:%S", t)
print(current_time)
Salida
07:46:58
Ejemplo 3: Hora Actual en Zonas Horarias Específicas
Cuando tu aplicación debe referenciar horas de múltiples regiones, la librería pytz proporciona soporte robusto de zonas horarias. El siguiente ejemplo obtiene la hora actual en Nueva York y Londres:
from datetime import datetime
import pytz
# Nueva York
ny_tz = pytz.timezone('America/New_York')
ny_time = datetime.now(ny_tz)
print("Hora NY:", ny_time.strftime("%H:%M:%S"))
# Londres
london_tz = pytz.timezone('Europe/London')
london_time = datetime.now(london_tz)
print("Hora Londres:", london_time.strftime("%H:%M:%S"))
Salida
Hora NY: 03:45:16 Hora Londres: 08:45:16
Estos fragmentos demuestran cómo adjuntar una zona horaria a un objeto datetime y luego formatearlo para su visualización. Para Python 3.9 y versiones posteriores, el módulo integrado zoneinfo puede reemplazar a pytz en muchos casos de uso.
python
- Cálculo de voltaje y corriente en circuitos DC reactivos
- Dominando tipos de datos en Python: Guía práctica
- Dominando operadores en Python: Guía completa
- Dominando la sentencia pass en Python: Guía práctica
- Dominando argumentos de funciones en Python: Posicionales, por palabra clave y por defecto
- Dominando Diccionarios en Python: Creación, Manipulación y Técnicas Avanzadas
- Dominando datetime en Python: Guía Práctica de Fechas, Horas y Zonas Horarias
- Obtener la Fecha y Hora Actual en Python: Guía Práctica
- Dominar el Módulo time de Python: Funciones, Structs y Ejemplos Prácticos
- Dominar time.sleep() en Python: Mejores Prácticas, Multihilo y Ejemplos Reales
- Python timeit(): medición de tiempo de ejecución con ejemplos prácticos