0% encontró este documento útil (0 votos)
25 vistas6 páginas

5 Errores de Python

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
25 vistas6 páginas

5 Errores de Python

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Evita estos 5 errores

al programar en Python
Eleva el nivel de tu código:
de principiante a medio/alto en minutos

[Link] por Juan Monroy


1
No iteres por los elementos de una lista usando
índices (muy habitual si vienes de otro lenguaje)

No hagas for sobre range para


la longitud de la lista...

lista = [10, 20, 30, 40, 50]

lista = [10, 20, 30, 40, 50] for elemento in lista:


print(elemento)
for indice in range(len(lista)):
print(lista[indice])
El propio for te proporciona
un elemento en cada iteración
[Link]
2
No concatenes cadenas de texto con el
operador + (es una operación lenta y costosa)

No construyas una cadena final concatenando


cada una de las cadenas individuales

cadenas = ['hola', 'soy', 'juan']


cadenas = ['hola', 'soy', 'juan']
resultado = '' resultado = ' '.join(cadenas)

for cadena in cadenas:


resultado += cadena + ' '
Usa el operador de join
de la clase str
[Link]
3
No abras y cierres “manualmente” los
ficheros para leer o escribir en ellos

Es necesario cerrar los ficheros después


de leer y escribir, pero debes hacerlo
explícitamente y puedes olvidarte

with open('[Link]') as fichero:


fichero = open('[Link]') datos = [Link]()

datos = [Link]()

[Link]() Usa el gestor de contexto with


que cerrará el fichero pot ti

[Link]
4
No recorras los valores de un diccionario
accediendo a partir de la iteración de sus claves

Si iteras un diccionario con for dicc = {1: 'uno', 2: 'dos', 3: 'tres'}


obtendrás sus claves
for clave, valor in [Link]():
print(clave, valor)

dicc = {1: 'uno', 2: 'dos', 3: 'tres'}

for clave in dicc:


Usa el método items de dict que proporciona
print(clave, dicc[clave])
una vista con pares clave-valor

[Link]
5
No construyas listas a partir de iterables
y haciendo append en un bucle estándar

Esto obliga a crear la lista vacía antes


y a escribir código innecesario

numeros = [4, 7, 9, 11, 12, 17]


numeros = [4, 7, 9, 11, 12, 17]
cuadrados = [n**2 for n in numeros if n % 2 != 0]
cuadrados = []
for n in numeros:
if n % 2 != 0:
[Link](n**2) Usa una list comprehension en una sola línea,
más legible y más eficiente, puro estilo Python

[Link]

También podría gustarte