No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso Básico de Python

Curso Básico de Python

Facundo García Martoni

Facundo García Martoni

Trabajando con texto: cadenas de caracteres

18/32
Recursos

Para trabajar con cadenas de texto en Python, vamos a aplicar una serie de métodos a las variables que hayamos creado anteriormente.
Método: es una función especial, que existe para un tipo de dato en particular. Por ejemplo, si queremos que el texto ingresado se transforme en mayúsculas.

Métodos para trabajar con texto en Python

  • variable.strip(): El método strip eliminará todos los caracteres vacíos que pueda contener la variable

  • variable.lower(): El método lower convertirá a las letras en minúsculas.

  • variable.upper(): El método upper convertirá a las letras en mayúsculas.

  • variable.capitalize(): El método capitalize convertirá a la primera letra de la cadena de caracteres en mayúscula.

  • variable.replace (‘o’, ‘a’): El método replace remplazará un caracterer por otro. En este caso remplazará todas las ‘o’ por el caracter ‘a’.

  • len(variable): Te indica la longitud de la cadena de texto dentro de la variable en ese momento.

Índices:

Se escriben entre corchetes al lado de la variable y son apuntadores numéricos a cada caracter. Por ejemplo, para el nombre Facundo, cuando utilizamos la variable nombre[1], aparece la letra ‘a’, dado que dicha variable tiene almacenada en ese momento la cadena de caracteres ‘Facundo’ donde la ‘a’ es el segundo caracterer.

Aclaración: se comienza a contar caracteres desde el 0 (que es el primer número en informática). Siguiendo el ejemplo, la letra ‘F’ de ‘Facundo’ es el caracter número 0. Por ende, nombre[0], nos devolvería una F.

Aporte creado por: Bruno Moschetto,

Aportes 402

Preguntas 46

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

Increíble curso, muy recomendado para las personas que inician en el mundo de la programación, muy buena la forma de explicar del profe Facundo. Éxitos

Built-in Functions 😃
Python tiene una serie de funciones y tipos integrados que siempre están disponibles. Aquí algunas de ellas:

METODOS:

variable.upper() = 'todos los caracteres en MAYÚSCULAS'
variable.capitalize() = 'solo la primera en MAYÚSCULA'
variable.lower() = 'todos los caracteres en minúscula'
variable.strip() = 'eliminar espacios basura del string'
variable.replace('caractera a cambiar', 'caracter por poner') = remplazar caracter

FUNCIONES BILT IN
aquellas que son propias del lenguaje y que no tenemos que crearlas, solo invocarlas.

len()
print()
input()

Si ejecutamos:

dir(variable)

Obtendremos todos los métodos disponibles para ejecutar de un objeto, variable o tipo de dato.

y si ejecutamos:

help(variable)

Nos entregará la documentación disponible para esa variable.

Me gustaría agregar que el método strip() sólo elimina los espacios en blanco del inicio y el final del nombre, no los espacios que puedan existir entre datos, por ejemplo Eliana Tobón el espacio que existe entre el nombre y el apellido no se elimina, solo espacios al inicio y al final de la cadena de texto ingresada.

Espero nos sirva este dato ❤️

Metodos: Son funciones especiales que solo funcionan con algún tipo de dato en particular.
Para mandarlas a llamar se usa:
…
variable.metodo()
…
Entre las mas usadas para el tipo de dato String están:
-variable.upper: Convierte la cadena de texto en matusculas.
variable.capitalize: Cambia la primer letra de una cadena de texto por mayuscula.
variable.strip: Elimina los espacios innecesarios.
variable.lower: Remplaza las mayúsculas en una cadena de texto por minúsculas.
variable.replace(‘inserta’, ‘remplaza’): Remplaza una parte de la cadena por otro, el primer parámetro sera lo que agregara o insertara y el segundo parámetro es lo que quitara para agregar el primer parámetro.
len(variable): Te indica la longitud de la cadena de texto dentro de la variable.

Mi humilde resumen de este video
.
Método: es una función que es especial para un tipo de dato en particular. Por ejemplo, si queremos que el texto ingresado se transforme en mayúsculas.
.
.

  • variable.strip() = El método strip eliminará todos los caracteres vacíos que pueda contener la variable
    .
  • variable.lower() = El método lower convertirá a las letras en minúsculas.
    .
  • variable.upper() = El método upper convertirá a las letras en mayúsculas.
    .
  • variable.capitalize() = El método capitalize convertirá a la primer letra de la cadena de caracteres en mayúscula.
    .
  • variable.replace (‘o’, ‘a’) = El método replace remplazará un caracterer por otro. En este caso remplazará todas las ‘o’ por el caracter ‘a’.
    .
    Índices: se escriben entre corchetes al lado de la variable y son apuntadores númericos a cada caracterer. Como se ve en el video, cuando utiliza la variable nombre[1] aparece la letra ‘a’ dado que dicha variable tiene almacenada en ese momento la cadena de caracteres ‘facundo’ donde la ‘a’ es el segundo caracterer.
    .
    Aclaración: se comienza a contar caracteres con el 0, siguiendo el ejemplo, la letra ‘f’ de ‘facundo’ es el caracter número 0.
    .
    Finalmente, se menciona a la funcion len() la cual muestra como resultado la cantidad de caracteres que contiene un string, tanto si este está almacenado en una variable como si ingresamos directamente un string para que cuente los caracteres.
    .

companeros les recomiendo que practiquen, una manera de reforzar estas clases puede ser haciendo los ejercicios de esta pagina:
http://aprendeconalf.es/python/ejercicios/tipos-datos.html

Para aquellos que quieran conocer a profundidad todos los métodos de la clase string , comparto el link con la documentación oficial de python

https://docs.python.org/3/library/stdtypes.html#string-methods

Es bastante útil. Espero que a alguien le sirva!

Mis notas de esta clase:
METODOS:

Un método es una función que funciona con un tipo de dato en particular. Se aplica sobre un objeto.

Por ejemplo sobre nombre
En la variable nombre almacenamos un dato de tipo cadena

nombre = “Juan de Dios”

Podemos ejecutar:

nombre.upper()
el método upper(), nos ayuda a volver todas las letras de la cadena en mayúsculas.

nombre.capitalize()
el método capitalice(), nos ayuda a que solo la primera letra de la cadena sea mayúscula.

nombre.strip()
el método strip(), nos ayuda a eliminar los espacios al principio y al final de los textos.

nombre = nombre.lower()
el método lower(), hace que la cadena se convierta en minúsculas…

nombre.replace(“a” , “i”)
el método replace(), sirve para reemplazar ciertas letras por otras en una cadena, para esto requiere de enviar dos parámetros, el primero indica la cadena que se va a reemplazar, y el segundo indica la letra que reemplazara a la primera.

En Python, veremos una cadena de caracteres como un objeto el cual tiene métodos específicos que pueden hacer algunas funciones, como las que se ejemplificaron anteriormente, pero también podemos verlos como un arreglo, al cual podemos acceder a cualquier de las posiciones de la cande de la siguiente manera:

nombre[0]
lo cual nos devolverá la letra “j”

nombre[1]
nos devuelve la letrea “u”

Por lo tanto los índices que indiquemos entre los corchetes nos indicarán la posición de la letra a la cual queremos acceder,

Podemos almacenarlo en una variable:

letra = nombre[3]

Siempre tomando en cuenta que la primera letra tiene la posición 0.

Un método para saber cuantos caracteres tiene una cadena podemos hacer el ejemplo de la siguiente manera

len(nombre)

de donde len() es un método que nos sirve para contar los caracteres de una cadena.

a continuación los ejemplos de la clase:

3377 ◯ : python3                                                       
Python 3.8.5 (v3.8.5:580fbb018f, Jul 20 2020, 12:11:27) 
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> nombre = input("Cual es tu nombre")
Cual es tu nombrejuan de dios
>>> nombre
'juan de dios'
>>> nombre.upper()
'JUAN DE DIOS'
>>> nombre.capitalize()
'Juan de dios'
>>> nombre = nombre.capitalize()
>>> nombre
'Juan de dios'
>>> nombre = nombre.lower()
>>> nombre
'juan de dios'
>>> nombre = nombre.replace("a" , "u")
>>> nombre
'juun de dios'
>>> nombre[0]
'j'
>>> nombre[1]
'u'
>>> letra = nombre[3]
>>> letra
'n'
>>> len(nombre)
12
>>> len(letra)
1
>>> 

Cadenas de caracteres

  • texto.upper() → convierte el texto a mayúsculas
  • texto.capitalize() → pone mayúsculas solo en la primera letra
  • texto.strip() → elimina los espacios basura
  • texto.lower() → convierte el texto a minúsculas
  • texto.replace(‘a’, ‘b’) → reemplaza la primera letra indicada por la segunda
  • len(texto) → indica el número de caracteres que tiene el texto
  • texto[1] → indica la letra seleccionada

Python String Methods los que usamos y más revísenlo.
https://www.w3schools.com/python/python_ref_string.asp


Mis notas

Un pequeño resumen que puede ayudar.
len() = nos ayuda a saber cuantas caracteres tiene mi spring
.upper() = Todos las letras pasan a estar mayúsculas.
.capitalize() = La primera letra pasa a estar en mayúscula.
.lower = se transforma todo a minúsculas.
.strip() = Elimina los espacios basura al inicio como al final.
.replace() = remplaza las letras. si nuestra variable nombre contiene Antonio
**nombre.replace(“i”, “o” ) ** (En este paso cambiará todas las letras “i” en “o”) así que el resultado sería Antonoo.

IMPORTANTE
Al hacerlo de la forma anterior solo cambiará la forma en que nos imprime el texto, si queremos cambiar la variable deberemos poner primero el nombre de la variable y la función ej:
**nombre = nombre.upper()
nombre = nombre…capitalize()
nombre = nombre…lower
nombre = nombre.strip()
nombre = nombre…replace()
**
[] (Índices)= nos servirán para acceder a cada letra. teniendo en cuenta que se empieza a contar desde 0
ANTONIO
0123456

Regla de oro de los arrays: siempre se empieza a contar en 0

SIEMPRE poner las funciones por encima del lugar del que la necesitemos llamar para que python sepa que la funcióne existe

Compañeros con la instrucción dir puedo ver que métodos puedo usar dependiendo el dato que tenga como variable.
Ejemplo, si mi variable es un string salen métodos como capitalize, lower… pero si mi variable es un numero (float o int) los métodos son otros.
La manera de enunciarlo es dir(mi variable).
Es útil!

APLICANDO LO APRENDIDO

asta ahora soy yo o esta facil … ajajaja o sera por que ya se algo de javascript :3

  • que es una cadena de caracteres?: es una secuencia ordenada de elementos que pertenecen a un cierto lenguaje formal o alfabeto análogas a una fórmula o a una oración.
  • que es un metodo?: un método es una función que es especial para un tipo de dato en particular
  • que es .upper()?: .upper() se encarga de transformar en mayúsculas caracteres alfabéticos de una variable.
  • que es .capitalize()?: es un método que se encarga de colocar solo la primera letra del texto asociado a la variable en mayúsculas.
  • que es .strip()?: lo que hace este método es eliminar los espacios basura que pueden estar al final o al inicio de mi cadena de caracteres
  • que es .lower()?: lo que hace este método es hacer minúsculas las letras en mi cadena de caracteres
  • que es .replace()?: como este es un método que recibe parámetros supongamos que.
#agregamos una variable que pide insertar un texto
nombre = input('cual es tu nombre?:')
#a esa variable le agregamos el metodo .replace
nombre = nombre.replace('o','a')
#lo que esta diciendo el metodo es que todas las letras 'o'
#en el texto que estan dentro de la variable se combiertan en 'a'
print(nombre)
>>>cual es su nombre?: donato
>>>danata

  • que son los índices?: los índices me permiten acceder a cada una de las letras que tenga el texto que contiene la variable, colocando dentro de corchetes el numero de la letra a la que quiero acceder.
#agregamos una variable que pide insertar un texto
nombre = input('cual es tu nombre?:')
print(nombre[0])
>>>cual es su nombre?: darian
d
print(nombre[1])
>>>cual es su nombre?: darian
a
#el indice 0 me dio la letra 'd' ya que en programacion se inicia contando desde 0 

  • que hace la función len?: nos permite averiguar cuantas letras tiene nuestra cadena de caracteres.
#agregamos una variable que pide insertar un texto
nombre = input('cual es tu nombre?:')
len(nombre)
print(nombre)
>>>cual es su nombre?: darian
>>>6

Sintaxis Descripción
var_txt.upper() Transforma todas las letras en mayúsculas
var_txt.lower() Transforma todas las letras en minúsculas
var_txt.capitalize() Primera letra en mayúscula
var_txt.strip() Quita espacios extras (al principio y final)
var_txt.replace(buscar, por) Reemplaza un texto por otro
var_txt[num] Obtener una letra de una cadena
len(var_txt) Saber el número de caracteres
#Todas mayúsculas
nombre = 'mauricio'
nombre.upper()
=> 'MAURICIO'

#Todas minúsculas
nombre = 'MAURICIO'
nombre.lower()
=> 'mauricio'

#La primera mayúscula
nombre = 'mauricio'
nombre.capitalize()
=> 'Mauricio'

#Quita espacios al principio y al final
nombre.strip()
nombre = '  mauricio  '
=> 'mauricio'

# Guardar en un valor
nombre = 'mauricio'
nombre = nombre.upper()
nombre
=> 'MAURICIO'

#Reemplazar un texto por otro
nombre.replace('i','x')
=> 'maurxcxo'

#Obtener un caracter específico, no olvidemos que incia en 0
nombre = 'mauricio'
nombre[0]
=> 'm'

#Obtener el tamaño de una cadena
nombre = 'mauricio'
len(nombre)
=> 8

Quizá te preguntes porque se le llaman métodos a estas funciones disponibles para tus variables
.
Como menciono Facundo, En Python todo es un objeto
.
El concepto de objeto viene de algo llamado programación orientada a objetos
.
Los objetos nacen a partir de algo llamado clases, las clases poseen dos cosas: métodos y propiedades
.
Las funciones de las clases le llamamos métodos,
Las variables de las clases le llamamos propiedades
.
Es por ello que ves que todo objeto tiene disponible funciones (metodos) listas para usarse

ejemplo:
nombre = input("¿cual es tu nombre?: ")
¿cual es tu nombre?: Armando
nombre
'Armando '
nombre.upper() # Coloca todos los caracteres en mayusculas 
'ARMANDO '
nombre.capitalize() # Coloca el primer caracter en mayuscula
'Armando '
nombre = nombre.capitalize() # guardo en la variable los cambios
nombre 
'Armando '
nombre = nombre.strip() # elimina los espacios sobrantes despues de los caracteres
nombre 
'Armando'
nombre = nombre.lower() #coloca todos los caracteres en minuscula
nombre
'armando'
nombre[0] # refleja que caracter esta en dicha pocicion
'a'
nombre[4]
'n'
letra = nombre[1] #se crea una variable y se solicita el indice de dicha pocicion 
letra
'r'
len(nombre) # refleja el total de caracteres que tiene
7
len(letra) # muestra el numero de caracteres guardado en la variable
1
len('Hola! Este es el curso de python')# muestra el numero de caracteres guardado en la variable
32```

Además de los métodos visto en la clase, hay otros que también son bastante interesantes para abarcar, por ejemplo:

  • string.title() nos devolverá un string con la primera letra en mayúscula de cada plabara de nuestro string
frase = "trabajando con texto cadenas de caracteres"
print(frase.title())
>> 'Trabajando Con Texto Cadenas De Caracteres'
  • string.startswith("a") nos devolverá True si nuestra cadena de caracteres inicia con el parámetro que le mandamos, diferenciando mayúsculas y minúsculas
frase = "trabajando con texto cadenas de caracteres"
print(frase.startswith("T"))
>> False
  • string.swapcase() nos devolverá un string donde se invertirán las mayúsculas y las minúsculas
frase = "TRABAJANDO con TexTO caDENas de CaraCTEreS"
frase.swapcase()
>> 'trabajando CON tEXto CAdenAS DE cARActeREs'

Facundo es muy buen profesor, python me gusta un monton.

  • upper—>colocar el texto en mayúscula.
  • capitalize—> Colocar primera letra en mayúscula.
  • strip—> Eliminar espacios basura al inicio o al final del texto.
  • lower—> Colocar el texto en minúscula.
  • replace—> Reemplaza una letra por otra .
  • [ ]—> Permite extraer la letra.

En programación se cuenta desde 0

  • len—> Cuenta el número de carácteres

Comparto los métodos empleados.

upper() pasa el texto a mayúscula.
capitalize() Organiza el la primera letra del texto en mayúscula.
strip() Quita los espacios que se han ingresado en el texto.
lower() Transforma el texto en minúscula.
replace(‘o’,‘a’) Remplaza cualquier texto o al otro elegido.
nombre[0] Trae el carácter de la posición del indice indicado.
len(nombre) trae la cantidad de caracteres.

Aqui les dejo un metodo para no poner tantos “stirng”+ variable + "stirng"
Se llama format():

price = 49
txt = "The price is {} dollars"
print(txt.format(price))

Métodos.- Función especial para un tipo de dato en particular.

Para variables de tipo STRING se pueden aplicar los siguientes métodos.

variable.upper() #Coloca todos los caracteres en mayúsculas.
variable.capitalize() #Coloca unicamente primer caracter en mayúscula.
variable.strip() #Elimina espacios al principio y al final de los caracteres.
variable.lower() #Coloca todos los caracteres en minúsculas.
variable.replace(caracter_a_reemplazar, caracter_nuevo) #Reemplaza caracter.

Índices.- Sirven para acceder a una posición exacta de la cadena de caracteres, se utiliza con corchetes y su conteo inicia en 0.

>>> variable = 'abcde'
>>> variable[0]
>>> 'a'

Si se desea medir la longitud de una cadena de caracteres se utiliza la función len

>>> variable = 'abcde'
>>> len(variable)
>>> 5

Un pequeña ayuda grafica 😃

🤔 No debemos pasar por alto el manejo de textos: cadena de caracteres, está es una habilidad esencial para el desarrollo de software.

AYUDAAAA. No he sido capaz de contar los caracteres de un texto. ¿Acaso no se hace con .len? Me siento inútil por no ser capaz de hacer algo tan “aparentemente sencillo”

.upper = todo el str a mayúsculas
.lower = todo el str a minúsculas
.capitalize = primer letra del str en mayúscula
.strip = elimina espacios vacíos en el str
.replace(letra a cambiar, letra a poner) = remplaza todas las letras en el str “a cambiar” poniendo en su lugar la letra "a poner"
var[posición] = toma el carácter de esa posición.

Métodos para los textos
• upper(): Coloca todo en mayúscula.
• capitalize(): Solo coloca la primera letra en mayúscula.
• Strip(): Elimina los espacios basura que pueden estar en la cadena de caracteres.
• lower(): Coloca todo en minúsculas.
• replace(): mientras se coloquen parámetros, puedes remplazar las letras.
• indice[]: dentro de los corchetes colocando un numero te regresara la letra que este en esa posición.
len(): sirve para contar cuantos caracteres se tienen.

nota
-Los strings son secuencias, tienen una longitud y se puede acceder através de un indice y pueden ser manipulados con métodos.
Dato:
Si quieres saber todos lo métodos que tiene un obtejo se usa la función dir(parametro).ej:
nombre = "Sebas"
dir(nombre)
-Los métodos con doble guión bajo son métodos mágicos 😉.

<nombre=input('Cual es tu nombre')
print(nombre.upper())# transforma todo a mayusculas
print(nombre)
print(nombre.capitalize())#transforma la primera letra a mayusculas
print(nombre.strip())#Elimina los espacion al principio y al final
print(nombre.lower())#transforma todas las letras a minuscula
print(nombre.replace('o','a'))#reemplaza el primer caracter por el segundo 
print(nombre[2])#muestra el caracter en la posicion 2
print(len(nombre))#muestra la cantida de caracteres de la palabra> 

Métodos de análisis

  • .count
  • .find
  • .index
  • .startswith
  • .endswith
  • .isdigit
  • .isnumeric
  • .isdecimal

Métodos de transformación

  • .capitalize
  • .encode
  • .center
  • .ljust
  • .rjust
  • strip(), lstrip() y rstrip()

Métodos de separación y unión

  • .split
  • .splitlines
  • .partition
  • .join

Trabajando con texto: cadenas de caracteres


📋 Un método es una función que es especial para un tipo de dato en particular

  • .upper() → Convierte el string en mayúscula.
  • .upper() → Convierte el string en minúscula.
  • .capitalize() → Convierte el primer carácter del string en mayúscula.
  • .strip() → Elimina los espacios basura que están al principio o final del string.
  • .replace(a, b) → Reemplaza los caracteres que des en el parámetro a por los que dejes en b.
  • variable**[0]** → Para acceder a un carácter en especifico.
  • len(variable) → Es una función que pasamos como parámetro una variable y nos da cuántos caracteres contiene

Buenisimo

  • .upper() convierte en mayúsculas toda la cadena de caracteres de formato texto.
    variable.upper()

  • .capitalize() convierte en mayúsculas la primera letra de la cadena de caracteres
    variable.capitalize()

  • .strip() Elimina los espacios basura que puedan estar al comienzo o al final de la cadena de caracteres.
    variable.strip()

  • .lower() convierte el texto de la cadena de caracteres en minúsculas.
    variable.lower()

  • .replace(x,y) reemplaza los caracteres iguales a ‘x’ con el caracter ingresado en ‘y’
    variable.replace(x,y)

  • len() nos devuelve el número de caracteres con los que cuenta una cadena de texto.
    len(variable)

De los cuatros cursos que he tomado, sin duda este ha sido el mejor junto con el curso Básico de Excel. Ya tengo experiencia en Ciencia de Datos y puedo asegurar que ambos cursos le servirán muchos a los recién iniciados en esta disciplina.

Hay otros que no fueron mencionados:

  • Para poner tipo titulo (Primera Letra De Cada Palabra En Mayúscula):
name.title()
  • Para cambiar las mayúsculas por minúsculas y viceversa:
hola.swapcase()
  • Para pruguntar si el texto esta de cierta forma:
    Se le pone is despues del punto y antes de la palabra que corresponde a esa forma.
    Ej:
name.isupper()
name.islower()
name.istitle()

y las respuestas las vota en

True o
False

me puse a hacer un pequeño programa con todo lo aprendido, pero al querer unir 2 cadenas de caracteras siempre me tira error en la tercera opcion, alguien mas experto que le heche un ojo y pueda ver donde esta el error. que la palabra que lee no esta definida
como sigue

File “<string>”, line 1, in <module>
NameError: name ‘dos’ is not defined

aqui mi codigo en python

print(“Hola Mundo”)

def segundaOpcion():
valor1 = input("Escribe el primer numero ")
valor2 = input("Escribe el sig numero ")
resultado = int(valor1) + int(valor2)
print("Tu resultado es " + str(resultado))

def terceraOpcion():
cadenaA = input("Escribe la primera palabra ")
cadenaB = input("Escribe la segunda palabra ")
resultado = cadenaA + cadenaB
print(resultado)

opciones = int(input("""
Bienvenido a Pthon, que deseas hacer??

1. Imprimir 'Hola Mundo'
2. Sumar 2 Numeros
3. Imprimir 2 cadenas de caracteres
4. Salir del programa

“”"))

if opciones == 1:
primeraOpcion()
elif opciones == 2:
segundaOpcion()
elif opciones == 3:
terceraOpcion()
elif opciones == 4:
print(“saliendo del programa”)
else:
print(“escoge la opcion correcta”)```

Este curso es el mejor de python hasta ahora por muchas razones esta metodología se debería implementar en todos los cursos espero que sigan los cursos a niveles intermedio y avanzado para aprender bien

En una sola linea de código de la consola podemos escribir lo siguiente lo siguiente:

nombre = input("¿Cuál es tu nombre?: ").capitalize()
¿Cuál es tu nombre?: andres

Y al consultar la variable nos arroja la primera letra en mayúscula.

nombre
´Andres´

Para ahorrar líneas de código pueden incluir las funciones capitalize y strip en la misma línea de código del input, de esta forma lo que el usuario escriba, inmediatamente es transformado a lo que necesitamos (sin tener que pedirle al código que haga pasos extras).

Otra utilidad es mostrar el último caracter con -1 (penúltimo con -2, etc).
En caso de no querer averiguar cuántos dígitos tiene la cadena, esto es útil.


Recuerden que len() también cuenta los espacios entre cada palabra.

nombre = "Susana"
# Cambiar un string a mayúscula
nombre.upper()
# Cambiar un string a Capital
nombre.capitalize()
# Eliminar los espacios antes y después un string
nombre.strip()
# Cambiar un string a minúscula
nombre.lower()
# Reemplaza las letras de un string (‘Buscar’ , ‘Reemplazar’)
nombre = nombre.replace('a', 'i')
# Acceder a un caracter en especifico
nombre[2]
# Contar la cantidad de caracteres de un string
len(nombre)```

Como novato de la programación, le entendí mucho más a este curso que al de Freddy… Les he fallado

Para conocer todos los métodos de un tipo
Usamos dir

>>> print(dir(nombre))
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isascii', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']

Si en nombre escribirian un nombre compuesto ya sea “jean franco” , con el metodo :

nombre = nombre.title() # Este metodo permite poner mayuscula a ambos nombres
print(nombre)
'Jean Franco'

nombre = input("¿Cuál es tu nombre?: ")

#La fución upper() convierte todo el texto en mayúsculas.
print (nombre.upper())

#La función capitalize() convierte la primera letra en mayúscula
#y las demás mantiene en minúsculas.
print (nombre.capitalize())

#La función strip() elimina los espacios basura que pueden estar al
#incio o al final de mi cadena de caracteres.
print (nombre.strip())

#La funcion lower() convierte todo el texto en minúsculas.
print(nombre.lower())

#La funcion replace() lo que hace es remplazar las letras o las palabras
#por otra que nosotros definamos.
print(nombre.replace('e','a'))

#La funcion len() nos permite saber el tamaño de nuestra cadena de caracteres.
print(len(nombre))


""" Una string es un cadena de caractere, entonces si defino mi variable nombre como:
    nombre = mecz_code
    Esto es lo que lee la consola:
    'm','e','c','z','_','c','o','d','e'
    
    Esto lo podemos representar como un arreglo:
    | m | e | c | z | _ | c | o | d | e |
      0   1   2   3   4   5   6   7   8    -> estos son los indices de posiones que tiene nuestro arreglo.
     -9  -8  -7  -6  -5  -4  -3  -2  -1    -> estos son los indices inversos de posicion que tiene nuestro arreglo.
    
    Entonces si colocamos:
    print(nombre[0])
    Nos imprimira:
    m
    """

nombre.upper( ) --> convierte al texto en mayúscula en Python
nombre.capitalize( ) --> coloca la inicial con mayúscula. ‘nombre’ es la palabra que deseamos convertir
nombre.strip( ) --> elimina los espacio basura que hay en la palabra
nombre.lower( ) --> convierte el texto a minúscula
nombre.replace(o, a) --> todas las letras ‘o’ serán reemplazadas por la letra 'a’
nombre[0] --> devuelve la primera letra de la cadena o palabra
len(nombre) --> devuelve el número de caracteres de la cadena
También funciona para otras palabras no declaradas pero debe tener " ".

Es bueno resaltar que la función len() también incluye los espacios en blanco en el conteo de caracteres!

FUNCIONES BUILT IN
aquellas que son propias del lenguaje y que no tenemos que crearlas, solo invocarlas.
len()
print()
input()

Metodos: Son funciones especiales que solo funcionan con algún tipo de dato en particular.
Para mandarlas a llamar se usa:
…
variable.metodo()
…
Entre las mas usadas para el tipo de dato String están:
-variable.upper: Convierte la cadena de texto en matusculas.
variable.capitalize: Cambia la primer letra de una cadena de texto por mayuscula.
variable.strip: Elimina los espacios innecesarios.
variable.lower: Remplaza las mayúsculas en una cadena de texto por minúsculas.
variable.replace(‘inserta’, ‘remplaza’): Remplaza una parte de la cadena por otro, el primer parámetro sera lo que agregara o insertara y el segundo parámetro es lo que quitara para agregar el primer parámetro.
len(variable): Te indica la longitud de la cadena de texto dentro de la variable.

  • Los índices me sirven para acceder a las posiciones, se utilizan con corchetes [ ]. En programación se cuenta desde la posición 0.
  • Para saber cuántos caracteres tiene mi cadena de texto utilizo len()

Recomiendo
Codeforces: Programación competitiva (Nivel A hasta G)
Hackerrank: Cursos completos, Estructuras y algoritmos, Preparación para entrevistas de trabajos

Un metodo es una función que esta ligada a un tipo de dato en particular.

Facundo explica muy claro para los que no venimos de programar anteriormente. Un 10 para este profesor.


Metodos
nombre.upper() crea todos los caracteres en mayúsculas
nombre.capatize() pone la primera letra en mayúsculas
nombre = nombre.capitalize() el método capitalize se ejecuta sobre el nombre y el resultado se guarda en la variable nombre
nombre = nombre.strip() elimina los espacios basura al principio al final de mi cadena de caracteres
nombre = nombre.lower() el nombre se transforma en minúsculas
nombre = nombre.replace(‘a’, ‘o’) remplaza todas las letras a por o
nombre[0] Índices para acceder a cada letra(desde cero se empieza a contar)
letra = nombre[2] también se aplica para variables
len(nombre) función que averigua cuantos caracteres tiene mi cadena

También podemos usar el indice para acceder a un caracter en especifico usando numeros negativos

>>> nombre
'Roberto'
>>> nombre[-1]
'o'
>>> 

Comparto mi resumen de la clase:

Esto ya lo habían compartido unos compañeros hace unos años, así que solo es un aporte de refuerzo.
https://docs.python.org/3/library/functions.html

Notas 📒

✏️ Funciones para cadenas

nombre = “miguel”

nombre2 = “MIGUEL”

nombre3 = “ MIGUEL ”

upper() convierte todas las letras de una cadena en mayúsculas.
nombre.upper() → “MIGUEL”

lower() convierte todas las letras de una cadena en minúsculas.
nombre2.lower() → “miguel”

capitalize() convierte el primer carácter en mayúscula de una cadena, si este es un letra.
nombre.capitalize() → “Miguel”

strip() elimina los espacios extras al principio y final de una cadena.
nombre3.strip() → “MIGUEL”

len(cadena) devuelve el número de caracteres de una cadena.
len(nombre) → 6

replace(A,B) reemplaza todos los caracteres que sean “A” por el carácter “B”.
nombre.replace("m","M") → “Miguel”

cadena[n] devuelve el carácter en la posición indicada. Recordar que se empieza a contar desde 0.
nombre[0] → “m”

Vi este comentario más adelante en este curso, pero creo que desde aquí sirve. Yo no podía comentar las líneas porque uso windows. 😄

Facundo es un excelente profesor, hace ver super facil las cosas👍

muy interesante la clase, este método de aprendizaje es muy dinámica y mientras uno aprende puede ir practicando.
y el la forma de explicar el profesor es muy buena

Mi resumen:

Funciones:

  • variable.upper() = Cambia todos los caracteres de un texto a Mayúsculas.
  • variable.capitalize() = Coloca la primera letra en Mayúscula.
  • variable.strip() = Elimina los espacios.
  • variable.lower() = Cambia todas las letras a minuscula.
  • variable.replace( “Buscar”, “Reemplazar”) = Busca un valor dentro del texto y lo reemplaza por otro valor.

Índice
variable[0] = invoca la primera letra de la variable. El lenguaje cuenta desde 0 los caracteres.

Funciones Buit In - Funciones propias del lenguaje.

lent() = indica la longitud de una cadena de texto.

La importancia tan grande que tiene eliminar esos espacios vacios dentro de las cadenas de caracteres cuando se trabaja con bases de datos

Me gusta que el curso sea como una película, donde poco a poco vas introduciendo a los personajes para luego centrarnos en la trama, estoy ansioso de que introduzcas al personaje “librerías” ya que en este apartado has introducido a las funciones build-in.

Si no puedes cerrar corchetes, utiliza Alt+93
.
Si no te funciona con el teclado númerico superior, intenta con el lateral.
.
Si tampoco te funciona, por ahora toma para que copies y pegues: [ ]
.
Saludos

Otra “built-in function” de string: .title()

>>> nombre = input("Nombre completo: ")
Nombre completo: jesus david cano lozano
>>> nombre = nombre.title()
>>> nombre
'Jesus David Cano Lozano'

Noten que la línea #3 puede ser suprimida así:

>>> nombre = input("Nombre completo: ").title()
Nombre completo: jesus david cano lozano
>>> nombre
'Jesus David Cano Lozano'

Tomado de: https://docs.python.org/3.8/library/stdtypes.html#textseq

Para colocar la primera letra en mayúsculas
con el método capitalize
upper es todo mayusculas
un método es una función asociada

# Para este tema hice un programa básico que 
# convierte el nombre que ingreses a la manera 
# correcta de escribir un nombre y contabiliza
# los caracteres que lo conforman:
nombre = input("Ingresa un nombre: ")
nombre = nombre.strip()
nombre = nombre.lower()
nombre = nombre.capitalize()
print("Esta es la forma correcta de escribir un nombre: " + nombre)
largo_nombre = str(len(nombre))
print("El nombre contiene: "+ largo_nombre + " letras")
nombre = input('numbre:')
# % matias
print(nombre)

nombre = nombre.capitalize()
print(nombre)
# % Matias

nombre = nombre.upper()
print(nombre)
# % MATIAS

nombre = nombre.lower()
print(nombre)
# % matias

nombre = nombre.replace('t', 'r')
print(nombre)
# % marias

nombre = nombre.strip()
# borra los espacios sobrantes
print(nombre)

print(nombre[2])

Metodos para strings:

string.upper() : devuelve una cadena de texto con sus carcteres en mayuscula.
string.capitalize() : devuelve una cadena de texto con su primer caracter en mayuscula.
string.strip() : elimina espacios cuando no tiene parametro dentro del parentesis. Para colocar un parametro utilizar '' o "" + caracter.
string.lower() : devuelve una cadena de texto con sus carcteres en minuscula.
string.replace('<valor a cambiar>', '<valor de cambio>')
len(<string>) : cantidad de caracteres.

slice un string:

nombre = 'brichedl'
nombre[0]
nombre[0:3]

variable.upper() = convierte el string en mayuscula
variable.capitalize = convierte la primera letra del string en mayuscula
variable.strip() = elimina los espacios que sobran
variable.lower() = convierte el string en minuscula
varible.replace(letra que vas a cambiar, letra por la cual lo vas a cambiar) = remplaza las letras
variable[la letra que quieres ver] = poner un numero en los corchetes para ver la letra
len(variable) = sirve para ver el tamaño de los caracteres

Considero que este debería ser el primer curso para todo aquiel que quiera aprender a programar independientemente del lenguaje que desee aprender. Excelente docente!

# Manipular cadenas

nombre = input('Escribe tu nombre:')
print(nombre.upper())                   #Todo para a mayúsculas
print(nombre.lower())                   #Todo para a minúsculas
print(nombre.capitalize())              #Primer letra en mayúsculas
print(nombre.strip())                   #Quita espacios al principio o al final de la cadena
nombre = nombre.strip().capitalize()    #Concatenar dos métodos sobre un mismo objeto, se respeta el orden de izquierda a derecha
print(nombre)
print(f'Tu nombre es {nombre}')
print('Tu nombre es {0}'.format(nombre))

Otra función muy útil mencionar es la title() para convertir en mayúsculas las iniciales de cada palabra de un String, como lo agregué en el ejercicio.

Notas de la Clase

Las funciones Built in: son funciones que vienen con el lenguaje Python y que solo necesito invocarlas dependiendo del tipo de dato.

# Cadena de ejemplo

>>> name = 'javier '
>>> name
'javier '
# upper() Convierte a mayúsculas la cadena
>>> name.upper()
'JAVIER '
# capitalize() Coloca la primera lera en mayúsculas
>>> name.capitalize()
'Javier '
# strip() Elimina espacios basura al principio o al final de la cadena
>>> name.strip()
'javier'
# lower() Transforma la cadena  minusculas
>>> name.lower()
'javier '
# replace("caracter_a_remplazar","caracter_de_remplazo")
>>> name.replace('a','e')
'jevier '

Índices aplicado a Strings

Con los índices puedo acceder a los caracteres de mi cadena de caracteres.
Los indicies siempre inician a contar desde el número 0 🤓

# Acceder a caracteres de mi cadena

#Acceder ala primera pocisión
>>> name[0]
'j'
#Acceder a la 3ra pocisión
>>> name[3]
'i'
# Acceder a la ultima posición
>>> name[5]
'r'
# len() Me permite saber la longitud en caracteres de mi cadena
>>> len(name)
7

#Ejemplo 2
>>> texto = "Estoy Aprendiendo Python"
>>> texto
'Estoy Aprendiendo Python'
>>> len(texto)
24

Una importante mención para Facundo, su capacidad de transmitir información de manera didactica es impresionante.

Trabajando con texto: cadenas de caracteres

METODOS:

  • variable.upper() = ‘todos los caracteres en MAYÚSCULAS’
  • variable.capitalize() = ‘solo la primera en MAYÚSCULA’
  • variable.lower() = ‘todos los caracteres en minúscula’
  • variable.strip() = ‘eliminar espacios basura del string’
  • variable.replace(‘caractera a cambiar’, ‘caracter por poner’) = remplazar caracter

FUNCIONES BILT IN
Aquellas que son propias del lenguaje y que no tenemos que crearlas, solo invocarlas.

  • len()
  • print()
  • input()

Aqui algunos metodos que mas he utilizado en los strings

MINUSCULAS .lower()

MAYUSCULAS .upper()

PRIMERA LETRA EN MAYUSCULAS .capitalize()

CAMBIAR DE MAYUS A MINUS O VICEVERSA .swapcase()

PRIMERA LETRA DE CADA PALABRA .title()

CENTRAR UN TEXTO .center(longitud, “llenado”)

ALINEAR UN TEXTO A LA IZQUIERDA .ljust(longitud, “llenado”)

ALINEAR UN TEXTO A LA DERECHA .rjust(longitud, “llenado”)

RELLENAR ANTEPONIEDO CEROS .zfill(cuantos ceros)

ENCONTRAR .FIND variable.find(“q quieres buscar”)

Hice un ejemplo de como capitalizar un string sin el método capitalize()

def get_name():
  return input('Ingresa tu nombre: ')


def capitalize_name(name):
  first_letter = name[0].upper()
  rest_of_word = name[1:len(name)]
  print(first_letter + rest_of_word)


def run_app():
  name = get_name()
  capitalize_name(name)


run_app()

mi resumen de lo que aprendí:

.upper, sirve para cambiar caractéres a mayúsculas
.capitalize(), sirve para cambiar a mayúscula, la primera letra de una palabra
.strip(), sirve para eliminar espacios
.lower(), sirve para cambiar las letras a minúsculas
.replace(), sirve para sustituir caractéres
[] indices
len() sirve para contar los caracteres de una variable o una cadena de caractéres

Excelente manera de enseñar profesor Facundo, un crack!

Métodos para manejar textos en Python:

  • .upper() = Convierte todo el texto a mayúsculas.
  • .capitalize() = Convierte la primera letra a mayúscula.
  • .strip() = Elimina los espacios basura al principio y al final del texto.
  • .lower() = Convierte todo el texto a minúsculas.
  • .replace(‘x’, ‘y’) = Remplaza todas las letras que coincidan con el parámetro ‘x’ del texto por el parámetro ‘y’.
  • len(‘x’) = Nos devuelve el numero de caracteres que se encuentran en el parámetro ‘x’

Y yo que creia que freddy era el mejor explicando , hasta que tome este curso (❁´◡`❁)

Facundo es un gran Profesor!!! explica muy bien, usa las palabras justas y ademas es Argentino!!!

Aqui un link donde podemos ver como se usan todos los metodos que nos ayudan a manipular cadenas de texto en python. Saludos.

https://www.w3schools.com/python/python_strings_methods.asp

hay otro metodo tambien ‘title’

title("hola mundo")
result: Hola Mundo

Esta clase en cualquier instituto hubiera sido un mes de clases… XD

La maravilla de los cursos en línea es que cada quién va a su ritmo. Ya que la cuestión no es ser super inteligente, sino ser super constante.

Me parecio interesante lo de los indices en una cadena sin que sea necesariamente un arreglo 🤔 Lo probé en JavaScript y PHP y también funciona! Jajaja esto está genial, no lo sabía

Resumen de la clase 😄

>>> nombre = ' sebastian '
>>> nombre = nombre.strip().upper().lower().capitalize()
>>> nombre
'Sebastian'

replace()

nombre = 'Facundo'
nombre = nombre.replace('o','a') # Reemplaza todos los caracteres del primer parametro por los del segundo

Retornar un caracter en específico.

nombre = 'Sebastian'
nombre[0]
#S

Conocer la cantidad de caracteres en una variable

len(nombre)
9

Y asi lo podriamos hacen en VSC

nombre = "curso python "
print (nombre.upper()) #Todo en mayuscula
print (nombre.capitalize()) #Primera en mayuscula
print (nombre.lower()) #Todo en miniscula
print (nombre.strip()) #Elimina espacios
print (nombre.replace("o", "x")) #Reemplaza todas las "o" de texto por "x"
print (nombre[1])
print (len(nombre))```

Recuerden que en programación SIEMPRE se cuenta desde el 0

Importante sería tener un listado de las principales y mas usadas funciones especiales (ya creadas dentro de Python) y poder practicar con ellas para poder aprenderlas por practica y no por memoria.