Python | Comprobar si todos los elementos de una lista son idénticos

Dada una lista, escriba un programa en Python para comprobar si todos los elementos de esa lista son idénticos.

Ejemplos:

Input : ['a', 'b', 'c']
Output : False

Input : [1, 1, 1, 1]
Output : True

Enfoque n.º 1: uso del bucle
Inicie un bucle for y compruebe si el primer elemento es idéntico a todos los demás elementos de la lista. Este enfoque tiene una complejidad de tiempo O(n).

# Python3 program to check if 
# all elements in a list are identical
def check(list):
    return all(i == list[0] for i in list)
      
# Driver code
print(check(['a', 'b', 'c']))
print(check([1, 1, 1]))
Producción:

False
True

 
Enfoque n.º 2: usar el conjunto La
conversión de una lista dada en un conjunto elimina todos los elementos duplicados. Si el tamaño del conjunto resultante es menor o igual a 1, la lista contiene todos los elementos idénticos.

# Python3 program to check if 
# all elements in a list are identical
def check(list):
   return len(set(list)) <= 1
     
# Driver code
print(check(['a', 'b', 'c']))
print(check([1, 1, 1]))
Producción:

False
True

 
Enfoque n.º 3: uso count()
Al contar el número de veces que aparece el primer elemento en la lista, podemos verificar si el conteo es igual al tamaño de la lista o no. En palabras simples, verifique si el primer elemento se repite en toda la lista o no.

# Python3 program to check if 
# all elements in a list are identical
def check(list):
   return list.count(list[0]) == len(list)
     
# Driver code
print(check(['a', 'b', 'c']))
print(check([1, 1, 1]))
Producción:

False
True

 
Enfoque n.º 4: método alternativo
Otro método es tomar el primer elemento y multiplicarlo por la longitud de la lista dada para formar una nueva lista, de modo que la nueva lista contenga elementos idénticos a los primeros elementos del tamaño de lista dado, y luego compararlo con la lista dada.

# Python3 program to check if 
# all elements in a list are identical
def check(x):
    return x and [x[0]]*len(x) == x
     
# Driver code
print(check(['a', 'b', 'c']))
print(check([1, 1, 1]))
Producción:

False
True

 
Enfoque n.° 5: Uso de segmentos extendidos
La notación de segmento de Python se utiliza para recuperar un subconjunto de valores. Por lo tanto, comparamos el principio al final de la lista con el final al principio de la lista.

# Python3 program to check if 
# all elements in a list are identical
def check(list):
   return list[1:] == list[:-1]
     
# Driver code
print(check(['a', 'b', 'c']))
print(check([1, 1, 1]))
Producción:

False
True

Publicación traducida automáticamente

Artículo escrito por Smitha Dinesh Semwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *