es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Convertir una zona horaria aware a la zona horaria UIC con zoneinfo (migración desde pytz)

Estoy utilizando Python 3.8, por lo tanto estoy usando para obtener zoneinfo. Django está desaprobando el uso de pytz, por lo que estoy realizando el cambio de pytz a zoneinfo.

Con pytz se haría lo siguiente: from pytz import UTC. La documentación de Python lo obtiene de datetime.timezone.utc' (y esto no tiene un métodolocalize`).

¿Cómo se realiza el equivalente de esto:
pytz.UTC.localize(my_datetime, is_dst=None)
Con zoneinfo?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Con zoneinfo, el código equivalente a pytz.UTC.localize(my_datetime, is_dst=None) sería:

    from datetime import datetime
    import zoneinfo
    
    tz = zoneinfo.ZoneInfo('UTC')
    my_datetime = datetime(2021, 8, 10, 12, 30, tzinfo=tz)
    

    Aquí, obtenemos el objeto zoneinfo.ZoneInfo para la zona horaria UTC y lo utilizamos como argumento tzinfo al crear el objeto datetime. Esto asigna la zona horaria UTC al objeto datetime. A diferencia de pytz, no es necesario llamar al método localize().

Comments are closed.