Subcadenas: https://www.learnbyexample.org/python-string-slicing/
cad1 = "hola" cad2 = "adios" print(cad1 + " y " + cad2) print(cad1, " y ", cad2) cad3 = "ana" * 3 print(cad3) print(len(cad3)) # subcadenas usamos la sintaxis de los corchetes cad4 = "En un lugar de la mancha. Camión" print(cad4[4]) # me escribe la posición 4 print(cad4[4:8]) # me escribe la posición 4 a la posición 8 no incluída print(cad4[4:-4]) # desde la posición 4 hasta la posición 4 empezando desde el final print(cad4[4:-1]) # desde la posición 4 hasta la posición 1 empezando desde el final print(cad4[-4:-1]) # desde la posición 4 empezando desde el final hasta la posición 1 empezando desde el final print(cad4[-1]) # último carácter print(cad4[-2]) # penúltimo carácter for i in range(len(cad4)): print(cad4[0:i + 1]) # conversiones de mayúsculas/minúsculas print(cad4.upper()) # lo pone en mayúsculas print(cad4.lower()) # lo pone en minúsculas print(cad4.capitalize()) # la primera letra de cada frase en mayúsculas, resto en minúsculas print(cad4.title()) # la primera letra de cada pelabra en mayúsculas, resto en minúsculas print(cad4.swapcase()) # las mayúsculas pasan a minúsculas y viceversa print(cad4.casefold()) # También a minúsculas # reemplazar cad5 = cad4.replace("a", "@") # reemplaza todas las apariciones de a en la cadena por @ cad6 = cad4.replace("a", "@", 2) # lo mismo pero solo las dos primeras print(cad5) print(cad6) # eliminar espacios cad6 = " hola que tal " print("|" + cad6.strip() + "|") # elimina espacios al principio y al final de la cadena print("|" + cad6.lstrip() + "|") # elimina espacios al principio de la cadena print("|" + cad6.rstrip() + "|") # elimina espacios al final de la cadena # buscar subcadenas dentro de una cadena print("mancha" in cad4) # esto me devuelve true porque mancha es una subcadena de cad4 print("pepe" in cad4) # esto me devuelve false porque pepe NO es una subcadena de cad4 pos = cad4.find("en") # busca la cadena 'en' dentro de la cad4 y nos devuelve la posición pos3 = cad4.lower().find("en") # busca la cadena 'en' dentro de la cad4 y nos devuelve la posición pos2 = cad4.find("un") # busca la cadena 'en' dentro de la cad4 y nos devuelve la posición print(pos) # -1 porque la cadena 'en' no está, está 'En' que no es lo mismo print(pos2) # porque 'un' está en la posición 3 print(pos3) # porque 'en' está en la posición 0 (al principio) si lo paso a minúsculas pos4 = cad4.find("a") while pos4 != -1: print(pos4) pos4 = cad4.find("a", pos4 + 1) # todas las apariciones de la letra 'a' dentro de cad4 cad6="en casa en ocasiones entiendo mis enredos" pos=cad6.find("en") print(pos) pos=cad6.find("en",1) print(pos) pos=cad6.find("en",9) print(pos) for i in range(len(cad4)): print(i,cad4[i]) # pasar de cadena a lista y viceversa # split y join lista=cad4.split() # me separa cada palabra y me la pone en una lista print(lista) print(len(lista)) # Número de palabras de la cadena for palabra in lista: print(palabra) # Voy recorriendo cada palabra de la lista print(cad6.count("en")) # todas las veces que aparece 'en' que puede ser dentro de una palabra cont=0 for palabra in cad6.split(): if palabra=="en": cont+=1 print(cont) # cuenta las veces que tenemos la palbra 'en' cad7="1,2,3,4,5,6,7,8" numeros=cad7.split(",") print(numeros) cad8="-".join(numeros) print(cad8) print(cad6[0:8:2]) # Voy de la posición 0 a la 8 de 2 en 2 print(cad6[8:0:-1]) # Voy de la posición 8 a la 0 de uno en uno pero al revés print(cad6[:4]) # Va desde el principio hasta la posición 4 print(cad6[4:]) # Va desde la posición 4 hasta el final print(cad6[::-1]) # Invierte la cadena invpalabras="" for palabra in cad6.split(): invpalabras+=palabra[::-1]+" " print(invpalabras)