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))
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))
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