Python: pruebe la coincidencia de dígitos posteriores en todos los elementos de la lista

A veces podemos enfrentarnos a un problema en el que necesitamos encontrar para una lista si contiene números que terminan con los mismos dígitos. Esta particular utilidad tiene una aplicación en la programación día a día. Analicemos ciertas formas en que se puede lograr esta tarea.

Método n.º 1: usar la comprensión de listas +map()
Podemos abordar este problema convirtiendo los elementos en strings y luego probando el elemento final de la string y, si son iguales, podemos devolver verdadero y luego convertir a conjunto y probar el tamaño del resultado. una. La conversión se realiza mediante mapa, la función de configuración se convierte en verificación de comprensión de conjunto y lista para el último elemento de la string.

# Python3 code to demonstrate
# Test rear digit match
# using list comprehension + map()
  
# initializing list 
test_list = [45, 545, 2345, 8765]
  
# printing original list
print("The original list : " + str(test_list))
  
# using list comprehension + map()
# Test rear digit match
res = len(set(sub[-1] for sub in map(str, test_list))) == 1
  
# print result
print("Does each element end with same digit ? " + str(res))
Producción :

The original list : [45, 545, 2345, 8765]
Does each element end with same digit ? True

Método n.º 2: Uso all()de la comprensión de listas +
Este es otro enfoque en el que se puede resolver este problema. En esto, usamos todas las funciones para verificar todos los elementos y devolver un resultado booleano y la comprensión de la lista hace la parte de conversión de string por función str y verifica todos los elementos con el último dígito del último elemento.

# Python3 code to demonstrate
# Test rear digit match
# using all() + list comprehension
  
# initializing list 
test_list = [45, 545, 2345, 8765]
  
# printing original list
print("The original list : " + str(test_list))
  
# using all() + list comprehension
# Test rear digit match
res = all(str(i)[-1] == str(test_list[-1])[-1] for i in test_list)
  
# print result
print("Does each element end with same digit ? " + str(res))
Producción :

The original list : [45, 545, 2345, 8765]
Does each element end with same digit ? True

Publicación traducida automáticamente

Artículo escrito por manjeet_04 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 *