Dadas dos strings, eliminó todos los elementos de ambos, que son iguales en un índice similar.
Entrada : test_str1 = ‘geels’, test_str2 = ‘beaks’
Salida : gel, bak
Explicación : e y s se eliminan cuando ocurren en los mismos índices.Entrada : test_str1 = ‘geeks’, test_str2 = ‘geeks’
Salida : ”, ”
Explicación : las mismas strings, todo el mismo índice, por lo tanto, eliminado.
Método #1: Usar loop + zip() + join()
En esto, emparejamos elementos con su índice usando join(), y verificamos la desigualdad para filtrar solo elementos diferentes en ambas strings, join() se usa para convertir el resultado en strings.
Python3
# Python3 code to demonstrate working of # Remove similar index elements in Strings # Using join() + zip() + loop # initializing strings test_str1 = 'geeks' test_str2 = 'beaks' # printing original strings print("The original string 1 is : " + str(test_str1)) print("The original string 2 is : " + str(test_str2)) # conversion to list for zipping list1 = list(test_str1) list2 = list(test_str2) res1 = [] res2 = [] for ch1, ch2 in zip(list1, list2): # check inequalities if ch1 != ch2: res1.append(ch1) res2.append(ch2) # conversion to string res1 = "".join(res1) res2 = "".join(res2) # printing result print("Modified String 1 : " + str(res1)) print("Modified String 2 : " + str(res2))
The original string 1 is : geeks The original string 2 is : beaks Modified String 1 : ge Modified String 2 : ba
Método #2: Usar la comprensión de listas
Realiza la tarea utilizando un método similar al anterior, solo una línea para realizar la tarea en forma compacta.
Python3
# Python3 code to demonstrate working of # Remove similar index elements in Strings # Using list comprehension # initializing strings test_str1 = 'geeks' test_str2 = 'beaks' # printing original strings print("The original string 1 is : " + str(test_str1)) print("The original string 2 is : " + str(test_str2)) # one-liner to solve problem res = ["".join(mastr) for mastr in zip(*[(a, b) for a, b in zip(test_str1, test_str2) if a != b])] # printing result print("Modified String 1 : " + str(res[0])) print("Modified String 2 : " + str(res[1]))
The original string 1 is : geeks The original string 2 is : beaks Modified String 1 : ge Modified String 2 : ba
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