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 (鈥榦鈥, 鈥榓鈥): El m茅todo replace remplazar谩 un caracterer por otro. En este caso remplazar谩 todas las 鈥榦鈥 por el caracter 鈥榓鈥.

  • 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 鈥榓鈥, dado que dicha variable tiene almacenada en ese momento la cadena de caracteres 鈥楩acundo鈥 donde la 鈥榓鈥 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 鈥楩鈥 de 鈥楩acundo鈥 es el caracter n煤mero 0. Por ende, nombre[0], nos devolver铆a una F.

Aporte creado por: Bruno Moschetto,

Aportes 432

Preguntas 53

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

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(鈥榠nserta鈥, 鈥榬emplaza鈥): 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 (鈥榦鈥, 鈥榓鈥) = El m茅todo replace remplazar谩 un caracterer por otro. En este caso remplazar谩 todas las 鈥榦鈥 por el caracter 鈥榓鈥.
    .
    脥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 鈥榓鈥 dado que dicha variable tiene almacenada en ese momento la cadena de caracteres 鈥榝acundo鈥 donde la 鈥榓鈥 es el segundo caracterer.
    .
    Aclaraci贸n: se comienza a contar caracteres con el 0, siguiendo el ejemplo, la letra 鈥榝鈥 de 鈥榝acundo鈥 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 = 鈥淛uan 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(鈥渁鈥 , 鈥渋鈥)
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 鈥渏鈥

nombre[1]
nos devuelve la letrea 鈥渦鈥

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
>>> 

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

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(鈥榓鈥, 鈥榖鈥) 鈫 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

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(鈥渋鈥, 鈥渙鈥 ) ** (En este paso cambiar谩 todas las letras 鈥渋鈥 en 鈥渙鈥) 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鈥apitalize()
nombre = nombre鈥ower
nombre = nombre.strip()
nombre = nombre鈥eplace()
**
[] (脥ndices)= nos servir谩n para acceder a cada letra. teniendo en cuenta que se empieza a contar desde 0
ANTONIO
0123456


Mis notas

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

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!

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

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
  • 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

APLICANDO LO APRENDIDO

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'

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

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```

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(鈥榦鈥,鈥榓鈥) 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 鈥渟tirng鈥+ 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

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

Tengo 32 a帽os de programar, hablo ingl茅s y otros nueve idiomas y eso me facilita el abordaje de informaci贸n, he logrado descargar miles de documentos de internet en minutos, usando scripts de python, puedo usar tkinter y otros frames, puedo hacer cualquier cosa en la matem谩tica de estos lenguajes, pero este docente aporta el maravilloso don de la modestia, la humildad, el don de gentes, la precisi贸n del lenguaje, lo recomiendo en todo sentido. print(鈥済racias profe鈥)

Si en nombre escribirian un nombre compuesto ya sea 鈥渏ean franco鈥 , con el metodo :

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

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 鈥渁parentemente 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 鈥渁 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 鈥榵鈥 con el caracter ingresado en 鈥榶鈥
    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.

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 鈥榙os鈥 is not defined

aqui mi codigo en python

print(鈥淗ola 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(鈥渟aliendo del programa鈥)
else:
print(鈥渆scoge 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 (鈥楤uscar鈥 , 鈥楻eemplazar鈥)
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']
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. 鈥榥ombre鈥 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 鈥榦鈥 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(鈥榠nserta鈥, 鈥榬emplaza鈥): 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(鈥榓鈥, 鈥榦鈥) 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'
>>> 

Facundo es el mejor ense帽ando sabe lo que hace, bien ah铆

todo el que desee ser buen programador, debe entender que no se trata como generar la data, sino como interconectarla. el programa es una primera etapa, es el conjunto de llaves, el dise帽o de la data es lo demas

Esta es una de las clases que m谩s me ha gustado y como ya estoy relacionando conceptos con pr谩ctica, es m谩s r谩pido comprender lo que explica 馃槂
Qu茅 genial, 隆estoy emocionada!

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 = 鈥渕iguel鈥

nombre2 = 鈥淢IGUEL鈥

nombre3 = 鈥 MIGUEL 鈥

upper() convierte todas las letras de una cadena en may煤sculas.
nombre.upper() 鈫 鈥淢IGUEL鈥

lower() convierte todas las letras de una cadena en min煤sculas.
nombre2.lower() 鈫 鈥渕iguel鈥

capitalize() convierte el primer car谩cter en may煤scula de una cadena, si este es un letra.
nombre.capitalize() 鈫 鈥淢iguel鈥

strip() elimina los espacios extras al principio y final de una cadena.
nombre3.strip() 鈫 鈥淢IGUEL鈥

len(cadena) devuelve el n煤mero de caracteres de una cadena.
len(nombre) 鈫 6

replace(A,B) reemplaza todos los caracteres que sean 鈥淎鈥 por el car谩cter 鈥淏鈥.
nombre.replace("m","M") 鈫 鈥淢iguel鈥

cadena[n] devuelve el car谩cter en la posici贸n indicada. Recordar que se empieza a contar desde 0.
nombre[0] 鈫 鈥渕鈥

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( 鈥淏uscar鈥, 鈥淩eemplazar鈥) = 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 鈥渓ibrer铆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 鈥渂uilt-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() = 鈥榯odos los caracteres en MAY脷SCULAS鈥
  • variable.capitalize() = 鈥榮olo la primera en MAY脷SCULA鈥
  • variable.lower() = 鈥榯odos los caracteres en min煤scula鈥
  • variable.strip() = 鈥榚liminar espacios basura del string鈥
  • variable.replace(鈥榗aractera a cambiar鈥, 鈥榗aracter 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, 鈥渓lenado鈥)

ALINEAR UN TEXTO A LA IZQUIERDA .ljust(longitud, 鈥渓lenado鈥)

ALINEAR UN TEXTO A LA DERECHA .rjust(longitud, 鈥渓lenado鈥)

RELLENAR ANTEPONIEDO CEROS .zfill(cuantos ceros)

ENCONTRAR .FIND variable.find(鈥渜 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(鈥榵鈥, 鈥榶鈥) = Remplaza todas las letras que coincidan con el par谩metro 鈥榵鈥 del texto por el par谩metro 鈥榶鈥.
  • len(鈥榵鈥) = Nos devuelve el numero de caracteres que se encuentran en el par谩metro 鈥榵鈥

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 鈥榯itle鈥

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.