
Contenido
Nuevas Características
En Python 3.12 destacan las mejoras en la sintaxis de parámetros de tipo, la formalización de f-strings, la introducción de un GIL único por intérprete, la monitorización de bajo impacto para CPython, el acceso al protocolo buffer en Python, la comprensión inlining y mensajes de error mejorados.

Sintaxis de parámetros de tipo (PEP 695)
Se introduce una nueva forma, más compacta y explícita, de crear clases y funciones genéricas.
Además, se introduce una nueva forma de declarar alias de tipo utilizando la sentencia type, que crea una instancia de TypeAliasType.
Análisis sintáctico de f-strings más flexible (PEP 701)
Los componentes de expresiones dentro de f-strings pueden ser ahora cualquier expresión válida de Python, incluyendo cadenas que reutilicen la misma comilla que la f-string que las contiene, expresiones multilínea, comentarios, barras invertidas y secuencias de escape unicode.
Hacer accesible el protocolo buffer en Python (PEP 688)
Se introduce una forma de utilizar el protocolo buffer desde código Python. Las clases que implementan el método buffer ( ) son ahora utilizables como tipos buffer.
El nuevo ABC de collections.abc.Buffer proporciona una forma estándar de representar objetos buffer, por ejemplo en anotaciones de tipo. El nuevo enum inspect.BufferFlags representa las banderas que se pueden utilizar para personalizar la creación de buffers.
Una nueva API de depuración/generación de perfiles (PEP 669)
Se define una nueva API para perfiladores, depuradores y otras herramientas para monitorizar eventos en CPython. Cubre un amplio rango de eventos, incluyendo llamadas, retornos, líneas, excepciones, saltos y más.
Se añade el espacio de nombres sys.monitoring con funciones y constantes.
Un GIL por intérprete (PEP 684)
Se introduce un GIL por intérprete, de modo que ahora se pueden crear sub-intérpretes con un único GIL por intérprete. Esto permite a los programas Python aprovechar al máximo los múltiples núcleos de la CPU. Actualmente sólo está disponible a través de la C-API, aunque se prevé una API para Python en la versión 3.13.
Inlining de compresión (PEP 709)
Las comprensiones de diccionario, lista y conjunto ahora se inlinean, en lugar de crear un nuevo objeto de función de un solo uso para cada ejecución de la comprensión. Esto acelera la ejecución de una comprensión hasta dos veces.
Las variables de iteración de comprensión permanecen aisladas y no sobrescriben una variable del mismo nombre en el ámbito externo, ni son visibles después de la comprensión.
Mensajes de error todavía más mejorados
- Los módulos de la biblioteca estándar son ahora potencialmente sugeridos como parte de los mensajes de error mostrados por el intérprete cuando un NameError es elevado al nivel superior.
- Mejora de la sugerencia de error para las excepciones NameError de las instancias.
- Mejorar el mensaje de error SyntaxError cuando el usuario escribe import x from y en lugar de from y import x.
- Las excepciones ImportError de las sentencias from import fallidas ahora incluyen sugerencias para el valor de basadas en los nombres disponibles en nombres disponibles en module.
Resumen
Python 3.12 representa un hito importante en la evolución del lenguaje, con una amplia gama de mejoras y adiciones que prometen enriquecer la experiencia de desarrollo, la eficiencia del lenguaje y la seguridad de las aplicaciones desarrolladas en Python.
El arte de programar
El arte de programar
La programación es el proceso creativo de escribir el código más sencillo posible, para que una computadora pueda dar una respuesta óptima a una necesidad humana.

