logo cosasdedevs
Llega Python 3.9 y estas son sus nuevas características

Llega Python 3.9 y estas son sus nuevas características



My Profile
Oct 08, 2020

El pasado lunes 5 de octubre se lanzó la nueva versión de Python (3.9) (cada vez más cerca de Python 4 🤞) y no he querido pasar la ocasión para probar de primera mano las nuevas características y contar por aquí algunas de ellas así que vamos al lío 😉.

Nuevas características

Fusión (merge) y actualización de diccionarios

Con el operador | podremos fusionar diccionarios, si una clave está contenida tanto en un diccionario como en el otro el valor que conservará será el del segundo diccionario:

a = {"key1": "5", "key2": "10"}
b = {"key2": "6", "key3": "7"}

print(a | b)

Resultado:

{'key1': '5', 'key2': '6', 'key3': '7'}

Para el caso de actualizar un diccionario, utilizaríamos el operador |= en el que el primer diccionario guardaría los datos del diccionario pasado como segundo parámetro y al igual que en la fusión, si ambos contienen la misma llave se actualizará con el valor del segundo diccionario:

a = {"key1": "5", "key2": "10"}
b = {"key2": "6", "key3": "7", "key4": "10"}

a |= b

print(a)

Resultado:

{'key1': '5', 'key2': '6', 'key3': '7', 'key4': '10'}

Nuevos métodos para eliminar prefijos y sufijos en cadenas de texto (strings)

Se han añadido dos funciones para el tratamiento de strings, en este caso una forma rápida de borrar el prefijo o el sufijo de una cadena de caracteres:

texto = 'Python tiene una nueva versión'
res = texto.removeprefix('Python ')
print(res)
# Resultado:
# tiene una nueva versión

res = texto.removesuffix('versión')
print(res)
# Resultado:
# Python tiene una nueva 

Tipado en funciones

Aunque ya en versiones anteriores de Python podíamos tipar nuestros parámetros a la hora de crear una función, hasta ahora no teníamos la opción de hacerlo con listas y diccionarios. Eso ya se resuelve con la nueva versión de Python 💪:

def greet_all(names: list[str]) -> None:
    for name in names:
        print("Hello", name)

greet_all(['Alber', 'Javier', 'Sara'])

Soporte para zonas horarias con el nuevo módulo zoneinfo

Con el nuevo módulo zoneinfo se podrán implementar las zonas horarias de la base de datos IANA por lo que ya no habrá que utilizar librerías de terceros para estos casos:

from zoneinfo import ZoneInfo
from datetime import datetime, timedelta

dt = datetime(2020, 10, 31, 12, tzinfo=ZoneInfo("Europe/Madrid"))
print(dt)

Y estas son solo algunas de las nuevas características, si queréis verlas todas aquí tenéis el enlace para que le echéis un vistazo 🔍.

El próximo viernes 16 de octubre el blog cumple un añito y para celebrarlo contaré algunas cosas sobre como ha ido creciendo el proyecto durante este año y el camino que tomará a partir de ahora.

Espero que este post te ayude y como siempre, te recomiendo seguirme en Twitter para estar al tanto de los nuevo contenido. Ahora también puedes seguirme en Instagram donde estoy subiendo tips, tutoriales en vídeo e información sobre herramientas para developers.

Por último os dejo mi guía para aprender a trabajar con APIs donde explico todo el funcionamiento de una API, el protocolo HTTP y veremos como construir una API con arquitectura REST.

Nos leemos 👋.

2338 vistas

🐍 Sígueme en Twitter

Si te gusta el contenido que subo y no quieres perderte nada, sígueme en Twitter y te avisaré cada vez que cree contenido nuevo 💪
Luego ¡Te sigo!

Nos tomamos en serio tu privacidad

Utilizamos cookies propias y de terceros para recopilar y analizar datos sobre la interacción de los usuarios con cosasdedevs.com. Ver política de cookies.