La mejor forma de comprobar si una lista está vacía
Por ejemplo, si ocurre lo siguiente:
a = []
¿Cómo verifico si a está vacío?
Respuesta corta:
Ponga la lista en un contexto booleano (por ejemplo, con un if
o while
Opinión). Resultará False
cuando está vacío y True
De lo contrario. Por ejemplo:
if not a: # do this!
print('a is an empty list')
PEP 8
PEP 8, la guía de estilo oficial de Python para el código de Python en la Biblioteca estándar de Python, dice:
Para las secuencias (cadenas, listas, tuplas), utilice el hecho de que las secuencias vacías son incorrectas.
Yes: if not seq: if seq: No: if len(seq): if not len(seq):
Debemos esperar que el código de la biblioteca estándar sea lo más eficiente y correcto posible. Pero, ¿por qué es eso y por qué necesitamos esta guía?
Explicación
A menudo veo código como este de programadores experimentados nuevos en Python:
if len(a) == 0: # Don't do this!
print('a is an...