Como programador en Python me he encontrado muchas veces con una situación en la que es necesario verificar si una cadena comienza con cierto texto o conjunto de caracteres y la primera vez no supe qué hacer. Ahora tengo la solución y te la voy a compartir, se trata del método startswith(), para strings en Python, del cual te voy a hablar en este artículo.
¿Qué es startswith() en Python?
El método startswith() hace posible la comprobación de una cadena string, si esta comienza con un valor específico. Si la condición se cumple, el resultado es true; de lo contrario, si no se cumple, el resultado devuelve false. Gracias a este método podemos validar entradas de usuario, procesar datos e inclusive crear filtros personalizados. Echémosle un vistazo a su sintaxis:
string.startswith(value, start, end)
En donde los parámetros son:
- value es obligatorio y es el valor que quieres comprobar. Puede ser una cadena o una tupla de cadenas.
- start es opcional y especifica desde qué posición comenzar la búsqueda.
- end es opcional y especifica hasta qué posición realizar la búsqueda.
Ejemplos en acción
Como siempre decimos, no hay mejor manera para entender cómo funciona algo, que dando ejemplos de la situación. Por eso queremos contarte algunos contextos en los que es muy válido este método por medio de algunos ejemplos:
- Comprobar si una cadena comienza con cierto texto:
txt = "Hola, bienvenido a mi mundo."
resultado = txt.startswith("Hola")
print(resultado) # Devuelve: True
En el ejemplo anterior, startswith() verifica si la cadena comienza con “Hola”. Como es correcto, devuelve True.
- Usar posiciones específicas con start y end:
txt = "Hola, bienvenido a mi mundo."
resultado = txt.startswith("bien", 6, 15)
print(resultado) # Devuelve: True
Aquí le decimos a startswith() que solo busque entre las posiciones 6 y 15. Puedes sacarle mayor provecho cuando trabajas con cadenas más largas y quieres centrarte en una sección específica.
- Verificar múltiples valores con una tupla:
txt = "Hola, bienvenido a mi mundo."
resultado = txt.startswith(("Hola", "Bien"))
print(resultado) # Devuelve: True
🔴 ¿Quieres Aprender a Programar con Python? 🔴
Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada
👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semanaSi no estás seguro de cuál palabra puede iniciar la cadena, puedes pasar una tupla de valores. Si cualquiera coincide, obtendrás True.
Contextos en los que podemos usar startswith()
Podemos usar startswith() en contextos variados, como son:
- Validar entradas de usuario: Si necesitas asegurarte de que un formulario comience con ciertas palabras clave, startswith() es tu aliado y puedes usarlo del siguiente modo:
entrada = "keepcoding_es_mi_opcion"
if entrada.startswith("keepcoding"):
print("La entrada es válida.")
- Filtrar datos: Cuando trabajas con listas grandes de cadenas, puedes filtrar elementos que cumplan ciertas condiciones así:
frases = ["Hola mundo", "Python es genial", "Hola a todos"]
filtradas = [f for f in frases if f.startswith("Hola")]
print(filtradas) # Devuelve: ['Hola mundo', 'Hola a todos']
- Procesar archivos: Al leer archivos, puedes procesar solo las líneas que comiencen con un texto específico, como encabezados o etiquetas. Así lo lograrás:
with open("archivo.txt", "r") as archivo:
for linea in archivo:
if linea.startswith("#"):
print(f"Comentario: {linea.strip()}")
Consideraciones al usar startswith()
Algunos aspectos generales a tener en cuenta con este método:
- Sensibilidad a mayúsculas y minúsculas: Es sensible a las diferencias, así que “Hola” no es lo mismo que “hola”. Si necesitas ignorarlas, combina con el método .lower().
- Manejo de errores: Asegúrate de que el valor pasado a startswith() sea válido, ya que podría lanzar errores si no es una cadena.
Si te pareció interesante este tema y quieres seguir aprendienod, no dudes en contactarte con nosotros para solicitar info sobre el bootcamp de programación inicial, en el que aprenderás variadas temáticas que te permitirán escalar en el mundo laboral. ¡No esperes más y únete a la mejor comunidad de programadores! Tendrás de tu lado a los mejores profesores que te acompañarán en todo el proceso.