SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
CCPG1043
Fundamentos de Programación
Unidad 2 – Variables y Tipos de Datos
Cadenas de caracteres
• La cadena de caracteres es uno de los tipos de datos más populares
en Python.
• Se considera un tipo de dato compuesto porque la cadena está
formada por elementos más pequeños llamados caracteres.
• Se pueden crear utilizando comillas simples o dobles .
Tipo Nombre Descripción Ejemplo
Cadenas str Expresiones (texto) formadas
por caracteres.
Se pueden representar con
comillas simples o dobles.
‘Hola’
“Mundo”
Índices de una cadena
• Se puede acceder a los caracteres de una cadena individualmente, utilizando un
índice (proceso conocido como indexar).
• Los índices inician en cero y terminan en la longitud de la cadena, menos uno.
• Un índice identifica a un miembro de un conjunto ordenado, en este caso el
conjunto de caracteres de la cadena.
• El índice puede ser cualquier expresión entera.
Índices de una cadena
• El operador corchete [] selecciona solo un caracter de una cadena:
• Se muestra la letra en la posición dos (2)
>>> fruta = "banana"
>>> letra = fruta[1]
>>> print (letra)
TIP:
Las posiciones empiezan desde 1, los índices desde 0.
Operaciones con cadenas
Operación Acción
x in s Indica si el texto de la cadena x está contenido en la cadena s
x not in s Indica si el texto de la cadena x no está contenido en la cadena s
s + t Concatena dos cadenas
s * n, n * s Multiplica (repite) una cadena n veces
len(s) Indica la longitud de la cadena
min(s) Indica el menor caracter dentro de la cadena (de acuerdo a su
código ASCII)
max(s) Indica el mayor caracter dentro de la cadena (de acuerdo a su
código ASCII)
Operador in (Búsqueda en cadenas)
• Para buscar un caracter o una cadena dentro de otra cadena, solamente
necesitamos verificar si la cadena lo contiene.
• El operador in devuelve un valor de True si la subcadena o caracter se
encuentra, caso contrario retorna False.
>>> 'la' in 'hola':
True
>>> 'lo' in 'hola':
False
Tamaño de una cadena
• La función len() indica el número de caracteres de una cadena:
• Si deseamos conocer la última letra de la cadena de caracteres:
>>> fruta = "banana"
>>> len(fruta)
6
longitud = len(fruta)
ultima = fruta[longitud-1]
#el resultado es igual que
ultima = fruta[-1]
Funciones con cadenas (formato)
Operación Acción
str.isalnum() Indica si la cadena (completa) es alfanumérica
str.isalpha() Indica si la cadena (completa) es alfabética
str.isdigit() Indica si la cadena (completa) está formada por
dígitos
str.islower() Indica si la cadena está formada por minúsculas
str.isupper() Indica si la cadena está formada por mayúsculas
str.lower() Muestra la cadena convertida en minúsculas
str.upper() Muestra la cadena convertida en mayúsculas
Formato
• Convertir una cadena a minúsculas o mayúsculas
• Método: lower() Retorna: una copia de la cadena en minúsculas.
>>> cadena = "Hola Mundo"
>>> print (cadena.lower())
hola mundo
>>> cadena = "Hola Mundo"
>>> print (cadena.upper())
HOLA MUNDO
• Método: upper() Retorna: una copia de la cadena en mayúsculas.
Formato
• Función: capitalize()
• Retorna: una copia de la cadena con la primera letra en mayúsculas.
>>> cadena = "bienvenido a mi aplicación"
>>> print (cadena.capitalize())
Bienvenido a mi aplicación
• Convertir una cadena en Formato Título
• Método: title() Retorna: una copia de la cadena convertida.
>>> cadena = "hola mundo"
>>> print (cadena.title())
Hola Mundo
Funciones con cadenas.
Operación Acción
str.count()
str.endswith()
str.startswith()
str.find()
str.index()
str.strip()
str.replace(x,y)
str.split()
• Llenar la tabla con las acciones que realiza cada método
Búsqueda en cadenas
• Para buscar un caracter o una subcadena en otra cadena, solamente necesitamos
saber si la cadena la contiene, y en qué posición.
• Se puede buscar utilizando la función index() o también con find()
>>> cadena = "hola”
>>> cadena.index('a')
3
>>> cadena.index('ha')
# index() genera un error
Traceback (most recent call last):
File "", line 1, in
ValueError: substring not found
>>> cadena = "hola”
>>> cadena.find('a’)
3
# si la cadena está, tanto index() como
find() funcionan igual
>>> cadena.find('ha’)
-1
# 'ha' no está en 'hola', find() retorna -1
Eliminar caracteres a ambos lados
• Función: strip("caracter")
• Retorna: la cadena sustituida.
>>> cadena = " www.espol.edu.ec "
>>> print (cadena.strip())
www.espol.edu.ec
#elimina los espacios al inicio y al final (por default)
>>> print (cadena.strip(' '))
www.espol.edu.ec
#elimina los espacios, o cualquier carácter especificado en los paréntesis
Reemplazar texto
• En Python esto lo hacemos con el método replace
• Función: replace("cadena a buscar", "cadena que se reemplaza")
• Retorna: la cadena reemplazada.
>>> buscar = "nombre apellido"
>>> reemplazar_por = "Juan Pérez"
>>> print ("Estimado Sr. nombre apellido:".replace(buscar, reemplazar_por))
Estimado Sr. Juan Pérez:
Operaciones con cadenas
Operación Acción
s[i] Muestra el caracter indicado por el índice i en la cadena s
s[i:j] Muestra caracteres en el rango entre el índice i (incluido) y el
índice j (no incluido)
s[i:j:k] Muestra caracteres en el rango entre el índice i (incluido) y el
índice j (no incluido), con saltos indicados por k. Si el step es
negativo, se recorre la cadena desde la derecha.
Slicing (segmento, recorte) cadena[start:stop:step]
TIP:
Hay que tener cuidado de no salirse del rango de una cadena.
Slicing de cadenas
➢ Dividir la cadena de caracteres s=“Fundamentos”
Code Result Descripción
s[2:5] nda Caracteres en los indices 2,3,4.
s[ :5] Funda Los primero 5 caracteres.
s[5: ] mentos Caracteres desde el índice 5 al final.
s[ -2: ] os Los últimos dos caracteres.
s[ : ] Fundamentos Toda la cadena de caracteres.
s[ 1 : 7 : 2] udm Caracteres desde el índice 1 al 6, step 2.
s[ : : -1] sotnemadnuF Un step negativo muestra al revese el string.
• url = www.espol.edu.ec
• url1 = www.uchile.edu.cl
• url2 = www.unam.edu.mx
¿Cómo saber si la URL es de Ecuador, Chile o México?
url[-2:]
Slicing, ejemplos
Mutabilidad
• Una cadena de caracteres es inmutable, es decir sus elementos no se pueden
modificar.
• Si se requieren modificaciones, se debe construir una cadena nueva (muchas
veces esto lo hace automáticamente el intérprete de Python).
saludo = "¡Hola todo el mundo!"
saludo[2] = 'L' # ¡ERROR!
print (saludo)
#ERROR
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
TIP:
Las Cadenas de Caracteres (str) son INMUTABLES.
Ejercicio:
• Implemente un progama en Python que pida una cadena de
caracteres y muestre por pantalla lo siguiente:
1. La cadena repetida 5 veces separada por un enter.
2. La cadena con cada letra “a” remplazada por una “e”
3. La cadena escrita al reves y en mayúsculas.
4. Otra cadena formada por los tres primeros y los 3 últimos
caracteres de la cadena.

Más contenido relacionado

Similar a 9_U2_S3_Cadenas.pdf

Similar a 9_U2_S3_Cadenas.pdf (20)

Implementación de Aplicaciones Basadas en Texto
Implementación de Aplicaciones Basadas en TextoImplementación de Aplicaciones Basadas en Texto
Implementación de Aplicaciones Basadas en Texto
 
Taller de lenguaje 1
Taller de lenguaje 1Taller de lenguaje 1
Taller de lenguaje 1
 
Arrays 8
Arrays 8Arrays 8
Arrays 8
 
Funciones de Strings en PHP
Funciones de Strings en PHPFunciones de Strings en PHP
Funciones de Strings en PHP
 
Python para principiantes
Python para principiantesPython para principiantes
Python para principiantes
 
30 Php. Cadenas Alfanumericas
30 Php. Cadenas Alfanumericas30 Php. Cadenas Alfanumericas
30 Php. Cadenas Alfanumericas
 
Algoritmos de busqueda
Algoritmos de busquedaAlgoritmos de busqueda
Algoritmos de busqueda
 
Algoritmos de busqueda
Algoritmos de busquedaAlgoritmos de busqueda
Algoritmos de busqueda
 
08 strings o cadenas
08 strings o cadenas08 strings o cadenas
08 strings o cadenas
 
Funciones str
Funciones strFunciones str
Funciones str
 
Comandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# SharpComandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# Sharp
 
Cadenas
CadenasCadenas
Cadenas
 
Django y Python para todos
Django y Python para todosDjango y Python para todos
Django y Python para todos
 
Lenguaje latino
Lenguaje latinoLenguaje latino
Lenguaje latino
 
Lista de Comandos
Lista de ComandosLista de Comandos
Lista de Comandos
 
Fundamentos de programación librería string C++
Fundamentos de programación librería string C++Fundamentos de programación librería string C++
Fundamentos de programación librería string C++
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadena
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadena
 
06 - Arrays y matrices en lenguaje C
06 - Arrays y matrices en lenguaje C06 - Arrays y matrices en lenguaje C
06 - Arrays y matrices en lenguaje C
 
Subcadenas-en-C
Subcadenas-en-CSubcadenas-en-C
Subcadenas-en-C
 

Último

ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxnandoapperscabanilla
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxdkmeza
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdfenelcielosiempre
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVGiustinoAdesso1
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesYanirisBarcelDelaHoz
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
Imperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperioImperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperiomiralbaipiales2016
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfNancyLoaa
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 

Último (20)

ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptx
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCV
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonables
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Imperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperioImperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperio
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 

9_U2_S3_Cadenas.pdf

  • 1. CCPG1043 Fundamentos de Programación Unidad 2 – Variables y Tipos de Datos
  • 2. Cadenas de caracteres • La cadena de caracteres es uno de los tipos de datos más populares en Python. • Se considera un tipo de dato compuesto porque la cadena está formada por elementos más pequeños llamados caracteres. • Se pueden crear utilizando comillas simples o dobles . Tipo Nombre Descripción Ejemplo Cadenas str Expresiones (texto) formadas por caracteres. Se pueden representar con comillas simples o dobles. ‘Hola’ “Mundo”
  • 3. Índices de una cadena • Se puede acceder a los caracteres de una cadena individualmente, utilizando un índice (proceso conocido como indexar). • Los índices inician en cero y terminan en la longitud de la cadena, menos uno. • Un índice identifica a un miembro de un conjunto ordenado, en este caso el conjunto de caracteres de la cadena. • El índice puede ser cualquier expresión entera.
  • 4. Índices de una cadena • El operador corchete [] selecciona solo un caracter de una cadena: • Se muestra la letra en la posición dos (2) >>> fruta = "banana" >>> letra = fruta[1] >>> print (letra) TIP: Las posiciones empiezan desde 1, los índices desde 0.
  • 5. Operaciones con cadenas Operación Acción x in s Indica si el texto de la cadena x está contenido en la cadena s x not in s Indica si el texto de la cadena x no está contenido en la cadena s s + t Concatena dos cadenas s * n, n * s Multiplica (repite) una cadena n veces len(s) Indica la longitud de la cadena min(s) Indica el menor caracter dentro de la cadena (de acuerdo a su código ASCII) max(s) Indica el mayor caracter dentro de la cadena (de acuerdo a su código ASCII)
  • 6. Operador in (Búsqueda en cadenas) • Para buscar un caracter o una cadena dentro de otra cadena, solamente necesitamos verificar si la cadena lo contiene. • El operador in devuelve un valor de True si la subcadena o caracter se encuentra, caso contrario retorna False. >>> 'la' in 'hola': True >>> 'lo' in 'hola': False
  • 7. Tamaño de una cadena • La función len() indica el número de caracteres de una cadena: • Si deseamos conocer la última letra de la cadena de caracteres: >>> fruta = "banana" >>> len(fruta) 6 longitud = len(fruta) ultima = fruta[longitud-1] #el resultado es igual que ultima = fruta[-1]
  • 8. Funciones con cadenas (formato) Operación Acción str.isalnum() Indica si la cadena (completa) es alfanumérica str.isalpha() Indica si la cadena (completa) es alfabética str.isdigit() Indica si la cadena (completa) está formada por dígitos str.islower() Indica si la cadena está formada por minúsculas str.isupper() Indica si la cadena está formada por mayúsculas str.lower() Muestra la cadena convertida en minúsculas str.upper() Muestra la cadena convertida en mayúsculas
  • 9. Formato • Convertir una cadena a minúsculas o mayúsculas • Método: lower() Retorna: una copia de la cadena en minúsculas. >>> cadena = "Hola Mundo" >>> print (cadena.lower()) hola mundo >>> cadena = "Hola Mundo" >>> print (cadena.upper()) HOLA MUNDO • Método: upper() Retorna: una copia de la cadena en mayúsculas.
  • 10. Formato • Función: capitalize() • Retorna: una copia de la cadena con la primera letra en mayúsculas. >>> cadena = "bienvenido a mi aplicación" >>> print (cadena.capitalize()) Bienvenido a mi aplicación • Convertir una cadena en Formato Título • Método: title() Retorna: una copia de la cadena convertida. >>> cadena = "hola mundo" >>> print (cadena.title()) Hola Mundo
  • 11. Funciones con cadenas. Operación Acción str.count() str.endswith() str.startswith() str.find() str.index() str.strip() str.replace(x,y) str.split() • Llenar la tabla con las acciones que realiza cada método
  • 12. Búsqueda en cadenas • Para buscar un caracter o una subcadena en otra cadena, solamente necesitamos saber si la cadena la contiene, y en qué posición. • Se puede buscar utilizando la función index() o también con find() >>> cadena = "hola” >>> cadena.index('a') 3 >>> cadena.index('ha') # index() genera un error Traceback (most recent call last): File "", line 1, in ValueError: substring not found >>> cadena = "hola” >>> cadena.find('a’) 3 # si la cadena está, tanto index() como find() funcionan igual >>> cadena.find('ha’) -1 # 'ha' no está en 'hola', find() retorna -1
  • 13. Eliminar caracteres a ambos lados • Función: strip("caracter") • Retorna: la cadena sustituida. >>> cadena = " www.espol.edu.ec " >>> print (cadena.strip()) www.espol.edu.ec #elimina los espacios al inicio y al final (por default) >>> print (cadena.strip(' ')) www.espol.edu.ec #elimina los espacios, o cualquier carácter especificado en los paréntesis
  • 14. Reemplazar texto • En Python esto lo hacemos con el método replace • Función: replace("cadena a buscar", "cadena que se reemplaza") • Retorna: la cadena reemplazada. >>> buscar = "nombre apellido" >>> reemplazar_por = "Juan Pérez" >>> print ("Estimado Sr. nombre apellido:".replace(buscar, reemplazar_por)) Estimado Sr. Juan Pérez:
  • 15. Operaciones con cadenas Operación Acción s[i] Muestra el caracter indicado por el índice i en la cadena s s[i:j] Muestra caracteres en el rango entre el índice i (incluido) y el índice j (no incluido) s[i:j:k] Muestra caracteres en el rango entre el índice i (incluido) y el índice j (no incluido), con saltos indicados por k. Si el step es negativo, se recorre la cadena desde la derecha. Slicing (segmento, recorte) cadena[start:stop:step] TIP: Hay que tener cuidado de no salirse del rango de una cadena.
  • 16. Slicing de cadenas ➢ Dividir la cadena de caracteres s=“Fundamentos” Code Result Descripción s[2:5] nda Caracteres en los indices 2,3,4. s[ :5] Funda Los primero 5 caracteres. s[5: ] mentos Caracteres desde el índice 5 al final. s[ -2: ] os Los últimos dos caracteres. s[ : ] Fundamentos Toda la cadena de caracteres. s[ 1 : 7 : 2] udm Caracteres desde el índice 1 al 6, step 2. s[ : : -1] sotnemadnuF Un step negativo muestra al revese el string.
  • 17. • url = www.espol.edu.ec • url1 = www.uchile.edu.cl • url2 = www.unam.edu.mx ¿Cómo saber si la URL es de Ecuador, Chile o México? url[-2:] Slicing, ejemplos
  • 18. Mutabilidad • Una cadena de caracteres es inmutable, es decir sus elementos no se pueden modificar. • Si se requieren modificaciones, se debe construir una cadena nueva (muchas veces esto lo hace automáticamente el intérprete de Python). saludo = "¡Hola todo el mundo!" saludo[2] = 'L' # ¡ERROR! print (saludo) #ERROR Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'str' object does not support item assignment TIP: Las Cadenas de Caracteres (str) son INMUTABLES.
  • 19. Ejercicio: • Implemente un progama en Python que pida una cadena de caracteres y muestre por pantalla lo siguiente: 1. La cadena repetida 5 veces separada por un enter. 2. La cadena con cada letra “a” remplazada por una “e” 3. La cadena escrita al reves y en mayúsculas. 4. Otra cadena formada por los tres primeros y los 3 últimos caracteres de la cadena.