Búsqueda y Medición
Una vez que puedes leer partes de una cadena, el siguiente paso es formular preguntas sobre su contenido: "¿contiene esto?", "¿dónde está?", "¿cuántas veces?", "¿empieza/termina con…?".
Pertenencia
Utiliza in para comprobar si una subcadena aparece en cualquier parte de una cadena. Devuelve un valor Booleano.
12345# Checking if a user's bio mentions specific skills user_bio = "Experienced in Python programming and data analysis." print("Python" in user_bio) # True → the bio mentions Python print("Java" not in user_bio) # True → Java is not listed as a skill
Encontrar posiciones
find(sub)devuelve el índice inicial de la primera coincidencia, o -1 si no se encuentra;rfind(sub)busca desde la derecha y devuelve el índice de la última coincidencia (o -1);index(sub)es similar afind, pero lanzaValueErrorsi la subcadena no existe.
12345678# Searching for keywords inside a product description description = "This brand new bracelet is made from recycled materials." print(description.find("bra")) # 5 → first occurrence of "bra" print(description.rfind("bra")) # 5 → only one "bra" found print(description.find("gold")) # -1 → not found, returns -1 print(description.index("bra")) # 5 → same as find(), but raises an error if not found print(description.index("gold")) # ValueError → "gold" not in the text
Contar ocurrencias
count(sub) devuelve cuántas veces aparece la subcadena, sin superposiciones.
12345# Counting occurrences of words or letters in a customer review review = "Amazing banana smoothie with banana slices on top!" print(review.count("banana")) # 2 → the word appears twice print(review.count("a")) # 8 → letter 'a' appears multiple times
Comienzos y Finales
Para comprobar el inicio o final de una cadena, utilizar startswith o endswith; estos métodos son más claros y seguros que el uso de cortes cuando solo se necesita una respuesta sí/no.
12345# Checking if the uploaded file has the correct name and format uploaded_file = "report_final.pdf" print(uploaded_file.startswith("report")) # True → file name starts correctly print(uploaded_file.endswith(".pdf")) # True → valid file format for upload
Comprobaciones sin distinción entre mayúsculas y minúsculas
Los métodos de cadena distinguen entre mayúsculas y minúsculas (case-sensitive). Para realizar búsquedas sin distinción, normalizar ambos lados con .lower() (o .upper()).
12345# Checking a user's message for a polite greeting user_message = "Hello, team! Let's start the meeting." print("hello" in user_message.lower()) # True → greeting detected print(user_message.lower().startswith("hello")) # True → message begins with "hello"
1. ¿Qué mostrará este código como salida?
2. ¿Qué instrucción no genera un error cuando falta la subcadena?
3. Dado s = "Banana", ¿qué expresión devuelve True sin distinguir mayúsculas y minúsculas al comprobar el prefijo "ba"?
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 3.45
Búsqueda y Medición
Desliza para mostrar el menú
Una vez que puedes leer partes de una cadena, el siguiente paso es formular preguntas sobre su contenido: "¿contiene esto?", "¿dónde está?", "¿cuántas veces?", "¿empieza/termina con…?".
Pertenencia
Utiliza in para comprobar si una subcadena aparece en cualquier parte de una cadena. Devuelve un valor Booleano.
12345# Checking if a user's bio mentions specific skills user_bio = "Experienced in Python programming and data analysis." print("Python" in user_bio) # True → the bio mentions Python print("Java" not in user_bio) # True → Java is not listed as a skill
Encontrar posiciones
find(sub)devuelve el índice inicial de la primera coincidencia, o -1 si no se encuentra;rfind(sub)busca desde la derecha y devuelve el índice de la última coincidencia (o -1);index(sub)es similar afind, pero lanzaValueErrorsi la subcadena no existe.
12345678# Searching for keywords inside a product description description = "This brand new bracelet is made from recycled materials." print(description.find("bra")) # 5 → first occurrence of "bra" print(description.rfind("bra")) # 5 → only one "bra" found print(description.find("gold")) # -1 → not found, returns -1 print(description.index("bra")) # 5 → same as find(), but raises an error if not found print(description.index("gold")) # ValueError → "gold" not in the text
Contar ocurrencias
count(sub) devuelve cuántas veces aparece la subcadena, sin superposiciones.
12345# Counting occurrences of words or letters in a customer review review = "Amazing banana smoothie with banana slices on top!" print(review.count("banana")) # 2 → the word appears twice print(review.count("a")) # 8 → letter 'a' appears multiple times
Comienzos y Finales
Para comprobar el inicio o final de una cadena, utilizar startswith o endswith; estos métodos son más claros y seguros que el uso de cortes cuando solo se necesita una respuesta sí/no.
12345# Checking if the uploaded file has the correct name and format uploaded_file = "report_final.pdf" print(uploaded_file.startswith("report")) # True → file name starts correctly print(uploaded_file.endswith(".pdf")) # True → valid file format for upload
Comprobaciones sin distinción entre mayúsculas y minúsculas
Los métodos de cadena distinguen entre mayúsculas y minúsculas (case-sensitive). Para realizar búsquedas sin distinción, normalizar ambos lados con .lower() (o .upper()).
12345# Checking a user's message for a polite greeting user_message = "Hello, team! Let's start the meeting." print("hello" in user_message.lower()) # True → greeting detected print(user_message.lower().startswith("hello")) # True → message begins with "hello"
1. ¿Qué mostrará este código como salida?
2. ¿Qué instrucción no genera un error cuando falta la subcadena?
3. Dado s = "Banana", ¿qué expresión devuelve True sin distinguir mayúsculas y minúsculas al comprobar el prefijo "ba"?
¡Gracias por tus comentarios!