Lecciones del módulo (1/4)
Métodos de strings
Las cadenas en Python son inmutables: cada método que las "modifica" en realidad devuelve una nueva cadena, la original permanece como está.
s = "Ciao"
s.upper() # 'CIAO' (nuova stringa)
s # 'Ciao' (originale invariata)Para "actualizar", asigna el resultado: s = s.upper().
Mayúsculas, minúsculas, control de mayúsculas y minúsculas
"Ciao".upper() # 'CIAO'
"CIAO".lower() # 'ciao'
"ciao mondo".title() # 'Ciao Mondo'
"ciao".capitalize() # 'Ciao'
"CiAo".swapcase() # 'cIaO'Limpieza: strip
Elimina los espacios en blanco (espacios, tabuladores, saltos de línea) de los extremos.
" ciao ".strip() # 'ciao'
" ciao ".lstrip() # 'ciao '
" ciao ".rstrip() # ' ciao'
"___ciao___".strip("_") # 'ciao' (argomento = caratteri da togliere)Dividir y volver a unir: split / join
"a,b,c".split(",") # ['a', 'b', 'c']
" ciao mondo".split() # ['ciao', 'mondo'] (split su whitespace, salta i vuoti)
",".join(["a", "b", "c"]) # 'a,b,c'Idioma fundamental: "separador".join(lista_de_cadenas). Todos los elementos
deben ser cadenas, de lo contrario se produce un TypeError.
Reemplazo: replace
"ciao mondo".replace("mondo", "Python") # 'ciao Python'
"aaaa".replace("a", "b", 2) # 'bbaa' (max 2 sostituzioni)Pruebas de contenido
"image.png".endswith(".png") # True
"http://".startswith("http") # True
"ciao" in "ciao mondo" # True (operatore in)
"ciao mondo".find("mondo") # 5 (-1 se non trovato)
"ciao mondo".count("o") # 2find devuelve -1 si la subcadena no está presente; index en cambio genera
un ValueError.
Las cadenas son inmutables
En Python, las cadenas son inmutables: ningún método de cadena modifica la cadena original; en su lugar, siempre devuelven una nueva cadena. Si escribes s.upper(), la variable s permanece sin cambios. Para guardar la modificación, debes reasignarla: s = s.upper().
Pruébalo tú
Dado `name = ' Ada Lovelace '`, calcula `cleaned` como `name` sin espacios en los extremos y todo en minúsculas. Evalúa `cleaned`.
Mostrar pista
Encadena los métodos: primero strip(), luego lower().
Solución disponible después de 3 intentos
Ejercicio de repaso
Dado `csv = 'mela,pera,kiwi'`, obtén la lista `fruits` dividiendo por comas, luego reconstruye `slash_separated` uniéndolos con ' / '. Evalúa `slash_separated`.
Mostrar pista
split divide, join vuelve a unir.
Solución disponible después de 3 intentos
Desafío adicional
Dada la cadena `raw_text = " hello world "`, elimina los espacios en blanco iniciales y finales con `.strip()` y convierte el texto a mayúsculas. Guarda el resultado limpio en `clean_text` y evalúalo.
Mostrar pista
Combina las llamadas en una cadena: raw_text.strip().upper().
Solución disponible después de 3 intentos