Dada una string, la tarea es escribir un programa en Python para reemplazar cada carácter N en una string por el valor K dado.
Ejemplos:
Entrada: test_str = «geeksforgeeks es lo mejor para todos los geeks», K = ‘$’, N = 5
Salida: geeks$orge$ks i$bes$for$all $eeks
Explicación: cada quinto carácter se convierte en $.
Entrada : test_str = «geeksforgeeks es lo mejor para todos los geeks», K = ‘*’, N = 5
Salida : geeks*orge*ks i* bes* for*all *eeks
Explicación: cada quinta ocurrencia se convierte a *.
Método 1: usar bucle y enumerar()
En esto, realizamos una iteración de cada carácter y verificamos si es Nth realizando módulo, es decir, encontrando el resto por N. Si es Nth ocurrencia, el carácter se reemplaza por K.
Ejemplo
Python3
# initializing string test_str = "geeksforgeeks is best for all geeks" # printing original string print("The original string is : " + str(test_str)) # initializing K K = '$' # initializing N N = 5 res = '' for idx, ele in enumerate(test_str): # add K if idx is multiple of N if idx % N == 0 and idx != 0: res = res + K else: res = res + ele # printing result print("String after replacement : " + str(res))
Producción:
La string original es: geeksforgeeks es lo mejor para todos los geeks
String después del reemplazo: geeks $orge $ks i $bes $for $all $eeks
Método 2: usar la expresión del generador , unir() y enumerar()
En esto, la construcción de strings ocurre usando join(). El enumerate(), ayuda a obtener los índices requeridos. La expresión del generador proporciona un enfoque abreviado de este problema.
Ejemplo
Python3
# initializing string test_str = "geeksforgeeks is best for all geeks" # printing original string print("The original string is : " + str(test_str)) # initializing K K = '$' # initializing N N = 5 res = ''.join(ele if idx % N or idx == 0 else K for idx, ele in enumerate(test_str)) # printing result print("String after replacement : " + str(res))
Producción:
La string original es: geeksforgeeks es lo mejor para todos los geeks
String después del reemplazo: geeks $orge $ks i $bes $for $all $eeks
La complejidad temporal y espacial de todos los métodos es la misma:
Complejidad de tiempo: O(n)
Espacio Auxiliar: O(n)
Método 3: Usar listas
Python3
# initializing string test_str = "geeksforgeeks is best for all geeks" # printing original string print("The original string is : " + str(test_str)) # initializing K K = '$' # initializing N N = 5 x=list(test_str) ns="" for i in range(0,len(x)): if(i!=0 and i%5==0): ns+=K else: ns+=test_str[i] # printing result print("String after replacement : " + str(ns))
The original string is : geeksforgeeks is best for all geeks String after replacement : geeks$orge$ks i$bes$for$all $eeks
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