Connect with us

Hi, what are you looking for?

Tecnología

Se libera Python 3.7

Python 3.7 estaba, hasta hace poco, en la versión denominada “candidate release”, pero ya pasó a su estado de versión oficial 3.7.  Desde luego que esto no ha sido un camino fácil. Pasar de la versión 2 a la 3 ha llevado tiempo y un sinfín de contratiempos. Pero quien siga usando versiones anteriores a la 3 debería de reconsiderarlo porque Python 3.7 ya es una versión madura. Y de alguna manera, el lenguaje está empezando a convertirse en un clásico.

DevTube: una colección de videos para programadores

Lo nuevo en la versión 3.7 empieza con las nuevas “data classes”, las cuales son clases que permiten almacenar datos. Por ejemplo, en C se usa “struct” o en Pascal “record”. Java ya está en proceso de tener estas “data classes” y Kotlin ya las tiene definitivamente. Las nuevas clases en Python es una manera de crear clases listas para usarse con datos. Simplemente se añade @dataclass frente a una definición de clase y entonces se listan todos los campos que se desean usar. Cada campo es un nombre de una variable seguido por una anotación de su tipo. El sistema (decorator) convierte esto en una definición de clases con su correspondiente init de manera que el programador pueda inicializar correctamente los datos cuando se crea finalmente la instancia. Se puede modificar la manera en que los campos son creados usando la función de ayuda del “helper”. Lo que es impresionante es que este tipo de datos se implementó usando solamente Python.

Con respecto a las anotaciones de tipos, la versión 3.7 añade referencias hacia adelante “forward” y mejora la velocidad de la operación. Y aunque tiene algunas dificultades, por ejemplo, cuando se describe la firma de una función, ésta se puede hacer mucho más compleja muy pronto, la idea puede ser funcional. Tendrá que ponerse más en práctica para ver la bondad de esta idea.

Otra característica nueva es la capacidad de trabajar con atributos definidos en módulos. Ahora se puede usar getattr__and__dir en los módulos. Esto, lógicamente, hace que los módulos se vean como clases “más grandes”, lo cual es realmente así. Por otra parte, se ha incrementado la precisión del paquete de rutinas que manejan el tiempo. Por ejemplo, se pueden usar las funciones del módulo de tiempo para ganar precisión hasta nanosegundos, que regresan como si fuesen enteros.

Hay otras mejoras, que no son espectaculares, pero que se ven importantes:

  • El orden del Diccionario se especifica ahora como parte del lenguaje y los iteratores trabajan en el orden en el que los objetos se han añadido.
  • “async” y “wait” son palabras reservadas que si se usan como variables con esos nombres, le causarán problemas seguramente.
  • Se ha mejorado el módulo “aysncio”.
  • Nuevas variables de contexto proveen almacenamiento de los threads locales para las tareas asíncronas.
  • Un nuevo API de C para el almacenamiento de los threads locales.

Finalmente, esta nueva versión mejora la velocidad de llamado a la biblioteca estándar. Las llamadas a los métodos son más rápidas y el startup es más rápido también.

La entrada Se libera Python 3.7 se publicó primero en unocero.

Click to comment

Comenta

Últimas noticias

Imagen de la Asamblea Nacional de Venezuela durante la declaración de personas no gratas a exmandatarios latinoamericanos.

Internacionales

🇻🇪 Venezuela declara no gratas a 9 expresidentes latinoamericanos entre ellos a los mexicanos Felipe Calderon y Vicente Fox🚫 #Venezuela #Política

Accidente automovilístico en Mazatlán con taxi y camioneta dañados Accidente automovilístico en Mazatlán con taxi y camioneta dañados

Mazatlán

🚦 Choque en Mazatlán: Camioneta ignora semáforo y deja a mujer de 80 años herida 🛑 #Mazatlán #SeguridadVial

Miembros de la Cruz Roja Mexicana y un soldado en una escena de emergencia en Culiacán. Miembros de la Cruz Roja Mexicana y un soldado en una escena de emergencia en Culiacán.

Sinaloa

Trágico ataque en Villa Bonita, Culiacán: Dos muertos y una herida 🔫😢 #CuliacánSeguro #JusticiaYa

Cartel de búsqueda de Rubén Carlos Anguamea, desaparecido en Ahome, Sinaloa, con detalles de su última aparición y características físicas. Cartel de búsqueda de Rubén Carlos Anguamea, desaparecido en Ahome, Sinaloa, con detalles de su última aparición y características físicas.

Sinaloa

🚨 Rubén, 16 años, desaparecido en Ahome 🕵️‍♂️ Última vez visto con ropa negra. Comparte información. #DesapariciónRubén #Ahome

Ambulancia de la Cruz Roja Mexicana con luces de emergencia en la noche Ambulancia de la Cruz Roja Mexicana con luces de emergencia en la noche

Sinaloa

🚨 Secuestro de ambulancia en Sinaloa pone en riesgo servicios médicos 🏥🔒 #Seguridad #Sinaloa

Accidente de tránsito en Los Mochis con un automóvil rojo y un autobús detenidos en la vía. Accidente de tránsito en Los Mochis con un automóvil rojo y un autobús detenidos en la vía.

Sinaloa

🚦Accidente en Los Mochis: Error de camión urbano ruta circuito invade carril y provoca choque sin heridos 🚌🚗 #TránsitoSeguro #LosMochis

Suscríbete y recibe noticias

Tendencia

COVID-19

🌡️ India confirma dos casos de HMPV en bebés. Alerta global por virus respiratorio crece 🏥👶 #Salud #Prevención

Music

Natanael Cano y Artistas Regionales Amenazados por Los Matasalas ⚠️🎤 #Seguridad #MúsicaRegional

Sinaloa

🚨 Enfrentamiento armado en La 19 deja heridos y carretera bloqueada ⚔️👮‍♂️ #Culiacán #Seguridad

Sinaloa

🚨 Caos en Culiacán: Bloqueo masivo con camiones de basura detiene el tráfico y autoridades sin respuestas 🛑 #CuliacánEnAlerta #Tráfico

Sinaloa

Trágico asesinato de Jesús "N", primo de Chuy Lizárraga 😢🔫 Justicia en marcha 🕊️ #Justicia #Sinaloa

Sinaloa

🚨 Desaparecen los hermanos Soto Imperial en Culiacán. Ayúdanos a encontrarlos 🙏 #Desaparecidos #Culiacán

Mazatlán

Fiscalía intensifica búsqueda de Génesis Zamora con Protocolo Alba 🕵️‍♀️💔 #Mazatlán #ProtocoloAlba

Sinaloa

Violento tiroteo en Carretera 19 deja 4 vehículos dañados ⚠️🚓 #Seguridad #CostaRica