Python: compruebe si el índice de elementos es igual para los elementos de la lista

Dadas dos listas y una lista de verificación, compruebe si para cada elemento de la lista de verificación, los elementos aparecen en un índice similar en 2 listas.

Entrada : test_list1 = [2, 6, 9, 7, 8], test_list2 = [2, 7, 9, 4, 8], check_list = [9, 8, 7]
Salida : Falso
Explicación : 7 está en 4 y 2 lugar en ambas listas, por lo tanto Falso.

Entrada : test_list1 = [2, 6, 9, 7, 8], test_list2 = [2, 6, 9, 4, 8], check_list = [9, 8, 6]
Salida : Verdadero
Explicación : Todo de la lista de verificación en un índice similar , por lo tanto Verdadero.

Método #1: Usar bucle 

En esto, iteramos para todos los elementos en la lista, si los elementos son diferentes y están presentes en la lista de verificación, se devuelve False.

Python3

# Python3 code to demonstrate working of 
# Check if elements index are equal for list elements
# Using loop
  
# initializing lists
test_list1 = [2, 6, 9, 7, 8]
test_list2 = [2, 7, 9, 4, 8]
  
# printing original lists
print("The original list 1 : " + str(test_list1))
print("The original list 2 : " + str(test_list2))
  
# initializing check_list
check_list = [9, 8, 2]
  
res = True 
for idx, ele in enumerate(test_list1):
      
    # check for indifference and containment
    if test_list1[idx] != test_list2[idx] and ele in check_list:
        res = False 
        break
      
# printing result 
print("Are elements at same index for required instances ?:  " + str(res))
Producción

The original list 1 : [2, 6, 9, 7, 8]
The original list 2 : [2, 7, 9, 4, 8]
Are elements at same index for required instances ?:  True

Método #2: Usando zip() + all() + generador de expresión

En esto, emparejamos índices similares usando zip() y luego all() se usa para verificar todos los índices, la expresión del generador se usa para la lógica de iteración.

Python3

# Python3 code to demonstrate working of 
# Check if elements index are equal for list elements
# Using zip() + all() + generator expression
  
# initializing lists
test_list1 = [2, 6, 9, 7, 8]
test_list2 = [2, 7, 9, 4, 8]
  
# printing original lists
print("The original list 1 : " + str(test_list1))
print("The original list 2 : " + str(test_list2))
  
# initializing check_list
check_list = [9, 8, 2]
  
# checking for all elements equal in check list using all()
res = all(a == b for a, b in zip(test_list1, test_list2) if a in check_list)
      
# printing result 
print("Are elements at same index for required instances ?:  " + str(res))
Producción

The original list 1 : [2, 6, 9, 7, 8]
The original list 2 : [2, 7, 9, 4, 8]
Are elements at same index for required instances ?:  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 *