Novedades en Python 3.12



Y bueno como sucede cada tanto cuando sale una nueva versión, estoy empezando a probar Python 3.12. Entonces, mientras lo voy probando voy a poner acá un resumen de las novedades que tiene y luego iré ampliando.

En resumen:

1. Nueva sintaxis de anotación de tipo para clases genéricas (PEP 695): Esta característica permite una forma más concisa y legible de anotar el tipado en las clases genéricas.

2. Análisis de f-string más flexible (PEP 701): Ahora se permiten muchas construcciones que antes estaban prohibidas en las f-strings, lo que proporciona una mayor flexibilidad a los desarrolladores.

3. Mensajes de error mejorados: Se han mejorado aún más los mensajes de error. Ahora, más excepciones que podrían ser causadas por errores tipográficos ofrecen sugerencias al usuario, lo que facilita la depuración.

4. Mejoras de rendimiento (PEP 709): Se han realizado numerosas mejoras de rendimiento, tanto grandes como pequeñas, para hacer que Python 3.12 sea más rápido y eficiente.

5. Soporte para el perfilador perf de Linux: Ahora, el perfilador perf de Linux puede informar los nombres de las funciones de Python en las trazas, lo que ayuda a los desarrolladores a entender mejor el rendimiento de sus programas.

Como ven, las mejoras son muchas y muy interesantes. Pero tambien hay algunas cosas que podrían romper la compatibilidad con versiones anteriores. Entonces, veamos algunos puntos importantes:

1. Eliminación del paquete distutils: El paquete distutils ha sido eliminado de la biblioteca estándar. Si tu código depende de este paquete, tendrás que cambiar a setuptools u otra alternativa.

2. Cambios en la sintaxis de anotación de tipo para clases genéricas (PEP 695): Si estás utilizando anotaciones de tipo en tus clases genéricas, es posible que debas actualizar tu código para adaptarte a la nueva sintaxis.

3. Análisis más flexible de f-string (PEP 701): Aunque esto generalmente es una mejora, si tu código depende de las limitaciones anteriores de las f-strings, es posible que encuentres problemas.

4. Mejoras en los mensajes de error:  Ahora, más excepciones que podrían ser causadas por errores tipográficos ofrecen sugerencias al usuario. Esto podría cambiar el comportamiento de tu código si depende de mensajes de error específicos.

Saludos,
Damian

Comentarios

Entradas populares de este blog

Descanso obligado

Python y la ciencia de datos

Como trabajar para el exterior desde Argentina