String replace: reemplazar caracteres en una cadena en Python

String replace Python

¿Quieres ser expert@ en Python? 🐍

❤️ He ayudado a miles de programadores/as como tú a ser mejores Pythonistas

📩 Recibe de vez en cuando trucos, scripts y tutoriales Python en español

🥇 Accede a nuestra comunidad privada de Slack: Pythonistas-es

* Al enviar el formulario confirmas que aceptas la POLITICA DE PRIVACIDAD

Antes o después, en algún proyecto Python te tocará manipular objetos de tipo string. De hecho, yo ahora mismo estoy trabajando en un script procesando imágenes de satélite y necesito crear un directorio cuyo nombre lo toma de base de otro directorio pero cambian los primeros caracteres. Para crear el nombre de este directorio estoy usando el método replace de la clase string.

Sustituir una subcadena de un string con replace()

El método replace(sub, nuevo) de la clase string devuelve una copia del string con todas las ocurrencias del substring sub reemplazadas por el substring nuevo.

Veámoslo con un ejemplo:

>>> dir_name = 'S2A_MSIL1C_20190106T105431_N0207_R051_T30SXH_20190106T112304'
>>> new_dir_name = dir_name.replace('MSIL1C', 'MSIL2A')
>>> new_dir_name
'S2A_MSIL2A_20190106T105431_N0207_R051_T30SXH_20190106T112304'

Limitando el número de ocurrencias a reemplazar

Al método replace() se le puede pasar un tercer parámetro opcional de tipo integer. Este parámetro indica el número máximo de ocurrencias a ser reemplazadas:

>>> aes = 'aaaaaa'
>>> nueva = aes.replace('a', 'b', 3)
>>> nueva
'bbbaaa'

No confundir con la función replace() del módulo string

El método replace() visto en los apartados anteriores se refiere al método perteneciente a objetos de tipo string. No hay que confundirlo con la función replace() del módulo string que, además, fue eliminada en la versión 3 de Python.

Es por esto que al método se le llama del siguiente modo: 'cadena'.replace('c', 'C') y no string.replace('cadena', 'c', 'C').

¿Te ha gustado? Ayúdame a compartirlo 🤗

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn

¿Quieres ser expert@ en Python? Recibe trucos Python y accede a nuestro espacio privado de Slack

¡Eyyy! Esto también te puede interesar 👇

* Te informo de que los datos de carácter personal que proporciones al comentar serán tratados por Juan José Lozano Gómez como responsable de esta web. La Finalidad es moderar los comentarios. La Legitimación es gracias a tu consentimiento. Destinatarios: tus datos se encuentran alojados en Disqus (disqus.com), mi sistema de comentarios, que está acogido al acuerdo de seguridad EU-US Privacy. Podrás ejercer Tus Derechos de Acceso, Rectificación, Limitación o Suprimir tus datos enviando un email a juanjo@j2logo.com. Encontrarás más información en la POLÍTICA DE PRIVACIDAD.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Sobre j2logo

j2logo profile

Quiero ayudarte a que seas mejor programador/a, pero no uno cualquiera, sino uno de los top.

¿Quieres ser expert@ en PYTHON?

j2logo-pythonistas

❤️ He ayudado a miles de programadores/as como tú

📩 Recibe trucos, scripts y tutoriales Python

🥇 Accede a nuestra comunidad privada de Slack