variable tuple traductor remove from empty else check python list is-empty

tuple - object is empty python



Compruebe si la lista está vacía sin utilizar el comando `not` (4)

Aquí:

if len(list3) == 0: print "No matches found"

¿Cómo puedo saber si una lista está vacía sin usar el comando no?
Esto es lo que intenté:

if list3[0] == []: print "No matches found" else: print list3

Soy un principiante, así que discúlpeme si hago errores tontos.


Averigua si una lista está vacía al probar su "verdad":

>>> bool([]) False >>> bool([0]) True

Mientras que en el segundo caso, 0 es Falso, pero la lista [0] es Verdadero porque contiene algo. (Si desea probar una lista para contener todas las cosas falsey, use all o any : any(e for e in li) es Verdadero si algún elemento en li es veraz).

Esto resulta en este idioma:

if li: # li has something in it else: # optional else -- li does not have something if not li: # react to li being empty # optional else...

Según PEP 8 , esta es la forma correcta:

• Para las secuencias, (cadenas, listas, tuplas), use el hecho de que las secuencias vacías son falsas.

Yes: if not seq: if seq: No: if len(seq) if not len(seq)

Prueba si una lista tiene un índice específico existente al usar try :

>>> try: ... li[3]=6 ... except IndexError: ... print ''no bueno'' ... no bueno

Por lo tanto, es posible que desee invertir el orden de su código a esto:

if list3: print list3 else: print "No matches found"


Compruebe su longitud.

l = [] print len(l) == 0


En orden de preferencia:

# Good if not list3: # Okay if len(list3) == 0: # Ugly if list3 == []: # Silly try: next(iter(list3)) # list has elements except StopIteration: # list is empty

Si tiene un if y un else, también puede reordenar los casos:

if list3: # list has elements else: # list is empty