Está en la página 1de 4

Curso Python – tema 4 – Variables enteras, flotantes y cadenas de caracteres

Curso Python – tema 4 – Variables enteras, flotantes y


cadenas de caracteres
Aprende un nuevo tipo de dato en python con el que poder guardar cadenas
de caracteres
 27 marzo, 2017    bytemind    Curso Python 3.5, Python

En el curso de Python, hasta el momento, hemos visto como podemos definir variables enteras y
flotantes y realizar su carga por teclado.
Ejemplo:
1 #definición de una variable entera
2 int1=2
3 #definición de una variable flotante
4 float1=2.54
5 #Realizar la carga por teclado de una variable entera
6 int2=int(input("Ingresar un valor entero:"))
7 #Realizar la carga por teclado de una variable flotante
8 float2=float(input("Ingresar un valor flotante:"))

 
A estos dos tipos de datos (int y float) se le suma un tipo de dato muy interesante también,
las cadenas de caracteres (string).
Una cadena de caracteres está compuesta por uno o más caracteres. También podemos crear
un string por asignación o solicitarla por teclado. Una cadena de caracteres, debe ir entre los
caracteres ‘’ (comillas simples) o “” (comillas dobles). Ejemplo:
1 #Inicializamos un string por asignación
2 string="Hola"
3 #Obtenemos el mismo resultado si lo encerramos en comillas simples
4 string2="Hola"
5 #Carga por teclado de un string
6 string3=input("Ingrese su nombre:")

 
Otro elemento importante que debemos destacar es el uso de # para dejar comentarios en nuestro
código. Esta es una práctica muy buena y bajo mi punto de vista obligatorio para un buen
programador. En muchas ocasiones me he encontrado con código sin un solo comentario, lo cual
dificulta mucho entender que hace ese programa o, incluso si el código es nuestro, si volvemos a ver el
programa después de por ejemplo 3 meses, no nos acordaremos al 100% de que hacía cada una de las
líneas. Con esto recordarlo, comentar el código es una de las mejores prácticas que debemos coger
desde un principio.
 

Procesado de strings
Sabiendo ya como introducir una cadena de texto por teclado, os preguntaréis ¿cómo puedo comparar
estas cadenas de texto?
Para ello podemos utilizar los operadores relacionales al igual que hacemos con los valores enteros o
flotantes, identificar si son iguales (==) o no (!=) o cual es mayor o menor alfabéticamente (<, >, <=, >=).
1 #declaramos los dos string
2 nombre1=input("Introduce el primer nombre:")
3 nombre2=input("Introduce el segundo nombre:")
4  
5 #comparamos si son iguales
6 if nombre1==nombre2:
7     print("Los nombres son iguales")
8 else:
9     print("Los nombres no son iguales")

 
También podemos conocer el total de caracteres de los cuales consta un string utilizando la función
len().
1 nombre=input("Introduce tu nombre:")
2 print(len(nombre))

 
Otro dato importante es concatenar los caracteres, podemos hacerlo en una variable para después
imprimirla o en el mismo momento de imprimir los datos
1 nombre="hola"
2 int=4
3 concatenar=nombre+" "+str(int)
4 print(concatenar)
5 print(nombre+" "+str(int))

 
El resultado en ambos casos es el mismo y, en caso de no ser necesario es mejor utilizar la segunda
opción ya que como resultado tenemos un código más limpio.
Además de poder saber el total de caracteres, que pasa si yo quiero comprobar por ejemplo si sólo
quiero imprimir el primer carácter de un string, para ello podemos acceder individualmente a través de
un subíndice. En este caso para saber la diferencia lo haríamos de la siguiente forma:
1 nombre=input("Ingrese su nombre"):
2 print(nombre[0])

 
En Python los strings son inmutables, es decir, una vez han sido inicializados no se puede modificar su
contenido
1 Nombre="ivan"
2 Nombre[0]="p" # esto no se puede hacer

Es muy importante no confundir parte del string con cambiar el valor completo de la misma por otro
valor del mismo tipo
1 Nombre="ivan"
2 Nombre="africa" # esto si se puede hacer

 
Además de los métodos indicados también podemos cambiar un string con tres métodos que nos hace
la vida mucho más fácil, estos son:
upper() -> devuelve un string convirtiendo todos sus caracteres a mayúsculas
lower() -> devuelve un string convirtiendo todos sus caracteres en minúsculas
capitalize() -> devuelve un string con el primer carácter en mayúscula y el resto en minúsculas
replace(“subcadena a buscar”, “subcadena nueva”) -> esta función permite reemplazar parte
de un string
strip(“carácter a eliminar”) -> elimina el carácter pasado como parámetro del string
lstrip(“cadena”) -> elimina caracteres a la izquierda de una cadena
rstrip(“cadena”) -> elimina caracteres a la de derecha de una cadena
 

Problemas propuestos
Ejercicio 1
Realizar la carga de dos cadenas de caracteres. Indicar si son iguales o no y mostrarlas ordenadas
alfabéticamente. ´

Ocultar

1 # solicitamos la carga de las cadenas


2 string1=input("Ingrese la primera cadena: ")
3 string2=input("Ingrese la segunda cadena: ")
4  
5 # comprobamos si son iguales
6 if string1==string2:
7     print("Las cadenas son iguales")
8 else:
9     print("Las cadenas no son iguales")
10  
11 # ordenamos alfabéticamente
12 if string1<string2:
13     print(string1)
14     print(string2)
15 else:
16     print(string2)
17     print(string1)

 
Ejercicio 2
Solicitar la carga por teclado de un string. Mostrar el total de caracteres del string y utilizar las funciones
explicadas anteriormente (upper, lower y capitalize).

Ocultar
1 string=input("Ingrese una palabra: ")
2 total=len(string)
3 up=string.upper()
4 lo=string.lower()
5 cap=string.capitalize()
6 print("El total de caracteres es ",total)
7 print(up)
8 print(lo)
9 print(cap)

 
Ejercicio 3
Realizar un programa que solicite la carga de un string por teclado. Informar después del número de
espacios en blanco de que consta el string, si no tiene, el programa debe informar de ello.
PS: Tener en cuenta que un espacio sería “ “ y una cadena vacía “”.

Ocultar

1 frase=input("Ingrese una frase:")


2 total=0
3 x=0
4  
5 while x<len(frase):
6     if frase[x]==" ":
7         total=total+1
8     x=x+1
9  
10 print("La cantidad de espacios en blanco ingresados es de ",total)

 
Ejercicio 4
Realizar un programa que solicite la carga de un string por teclado. Imprimir el string separando todos
los caracteres con un espacio, excepto al principio y al final.

Ocultar

1 string=input("Ingrese una cadena de caracteres: ")


2 texto=""
3  
4 for x in range(len(string)):
5     if x != len(string):
6         texto=texto+string[x]+" "
7     else:
8         texto=texto+string[x]
9  
10 print(string)
11 print(texto)

 
Además tenéis la lista completa de ejercicios en nuestro repositorio en github.
Con esto acabamos el cuarto capítulo de nuestro curso de python 3.5. Si tienen cualquier duda
relacionada con el contenido explicada en este capítulo, pueden exponerla en sus comentarios y le
ayudaremos a resolverla lo antes posible. Nos vemos en el siguiente capítulo con las estructuras de tipo
lista.

También podría gustarte