Cómo reemplazar caracteres en una cadena en Python
Aprenda a reemplazar caracteres o subcadenas en cadenas de Python. Domine el método replace(), cuente los límites y utilice la traducción para varios caracteres.
Descripción general
La manipulación de cadenas es fundamental para analizar entradas, representar plantillas, limpiar datos y generar texto de salida. En Python, modificar caracteres o subcadenas específicas dentro de un bloque de texto es sencillo, pero requiere comprender una propiedad fundamental de las cadenas: la inmutabilidad.
Debido a que las cadenas de Python son inmutables, no se pueden modificar sus caracteres en el lugar (por ejemplo, escribir `text[0] = "A"` genera un `TypeError`). En cambio, cualquier operación que altere una cadena debe crear y devolver una cadena nueva. La herramienta principal para esto es el método incorporado `.replace()`.
El método `.replace(old, new)` busca en una cadena todas las apariciones de una subcadena especificada y las reemplaza con una nueva subcadena. También puede especificar un tercer argumento opcional, "recuento", que limita el número de reemplazos a realizar de izquierda a derecha. Para reemplazos más complejos de varios caracteres, puede usar el método `.translate()` o expresiones regulares con la función `re.sub()`.
Código y salida de ejecución
Este script demuestra la modificación de cadenas reemplazando subcadenas y caracteres usando el método reemplazar().
text = "banana apple banana cherry"
# 1. Replace all occurrences of a word
replaced_all = text.replace("banana", "orange")
print("Replaced all:", replaced_all)
# 2. Replace with a count limit (only first occurrence)
replaced_limit = text.replace("banana", "orange", 1)
print("Replaced limit:", replaced_limit)
# 3. Replace individual characters (immutability demonstration)
phrase = "pyth0n"
corrected = phrase.replace("0", "o")
print("Corrected string:", corrected)Replaced all: orange apple orange cherry
Replaced limit: orange apple banana cherry
Corrected string: pythonImplementación paso a paso
- Llame al método .replace() en la cadena de destino.
- Pase la subcadena de destino como primer argumento y el reemplazo como segundo.
- Utilice el argumento de recuento si desea restringir el número de reemplazos.
Preguntas frecuentes
¿Cómo reemplazo caracteres en una cadena en el lugar?
No puedes porque las cadenas de Python son inmutables. Debe asignar el resultado del método .replace() nuevamente a su variable de cadena: texto = texto.replace(...).
¿Replace() distingue entre mayúsculas y minúsculas?
Sí, .replace() distingue estrictamente entre mayúsculas y minúsculas. Para realizar reemplazos que no distinguen entre mayúsculas y minúsculas, debe usar expresiones regulares con el módulo re y re.IGNORECASE.
Temas relacionados
Aprenda cómo dividir una cadena en una lista en Python usando el método split(). Explore la división por espacios, comas, nuevas líneas y limite el recuento de divisiones.
Cómo invertir una cadena en PythonAprenda a invertir una cadena en Python usando el corte, la función invertida() y la concatenación de bucles con ejemplos de código visual.
Recursos recomendados de Python
Amplíe sus conocimientos con tutoriales interactivos relacionados, hojas de trucos y comparaciones de códigos.
Prueba/excepto de Python y manejo de errores
Evite que sus scripts de Python fallen. Aprenda a intentar, excepto, finalmente bloquear y cómo generar excepciones personalizadas correctamente.
Hoja de trucos sobre métodos de cadenas de Python
Una guía de referencia completa para la manipulación de cadenas de Python. Domine el formateo, la búsqueda, la división, el reemplazo y la verificación de las propiedades de las cadenas.
Python vs JavaScript: ¿Qué lenguaje de programación es mejor?
Una comparación completa entre Python y JavaScript. Explore las diferencias de sintaxis, el rendimiento, los casos de uso (backend frente a frontend) y ejemplos de codificación.