Está en la página 1de 27

Sesión II

Conociendo la sintaxis
INTRODUCCIÓN

¡Hola! Te encuentras en la segunda sesión de este curso de Python. En esta sesión


veremos cómo funciona la sintaxis de Python por medio de las variables, tipos de datos
y utilizando operaciones matemáticas simples en este lenguaje.
¡Comencemos!
¿QUÉ APRENDEREMOS?

Hoy veremos los siguientes temas:


 
• Operaciones aritméticas
• Variables
• Tipos de datos
- Datos numéricos y cadenas
- Comentarios
- Listas y tuplas
- Booleanos
OPERACIONES ARITMÉTICAS (I)

Hito interactivo

Para comenzar ¿Cómo hacemos para abrir Spyder?


 
a) Lo buscamos desde el inicio
b) Vamos al acceso directo en el escritorio
c) Lo ejecutamos desde la consola cmd con el comando spyder3
d) Lo ejecutamos desde el navegador web con el comando spyder3
 
Correcta: c)
Feedback: Recuerda ejecutar esta acción cada vez que quieras iniciar Python o visites
las próximas sesiones del curso
OPERACIONES ARITMÉTICAS (II)
Números enteros y decimales
Python distingue entre números Puedes probar ingresar entradas (In) y recibir
enteros y decimales. salidas (Out) desde la consola activa de
Al escribir un número decimal, el Spyder.
separador entre entero y decimal
es un punto.

Si se escribe una coma, Python no lo


entiende como separador, sino como
una pareja de números distintos. En
este caso, al estar encerradas en
paréntesis, se conocen como
“Tuplas”.

Si se escribe un número con parte


decimal “0”, Python también lo
considera como decimal.
Todo aquel número decimal en Python se le llama “número flotante” (float) y aquellos que son números no decimales son
enteros (int).
OPERACIONES ARITMÉTICAS (III)
Al hacer operaciones en las que intervienen números enteros y flotantes, el resultado es siempre flotante. En caso de que el
resultado no tenga parte decimal pero una de sus partes sí, Python escribirá un 0 como decimal. Por ejemplo, al multiplicar 5
con 1.2 dará 6.0. 
A continuación, se muestra una tabla resumen con algunas de las operaciones matemáticas más relevantes, su símbolo en
Python y ejemplos.

Operación Símbolo Ejemplo Resultado Descripción


Adición + 3+5 8 Suma dos números
Sustracción - 4–6 -2 Resta dos números
Multiplicación * 3*5 15 Multiplica dos números
División / 20 / 8 2.5 Divide dos números
Eleva el primer número (base) al segundo
Potencia ** 5 ** 3 125 (exponente). En el ejemplo, 5 ** 3 es lo mismo que
5x5x5
Módulo (o
% 8%3 2 Entrega el resto de la división entre 2 números
resto)
OPERACIONES ARITMÉTICAS (IV)
Hito interactivo

¿Qué ocurre al dividir un número por cero en la consola de Spyder?


a) Devuelve 0
b) Devuelve 1
c) Devuelve error
d) Devuelve un valor infinito

Correcta: c)
Feedback: En efecto, devuelve el error
VARIABLES (I)
Las variables, como su nombre lo dice, son elementos que “varían”. Esto significa que pueden obtener diversos valores en
distintos momentos, dependiendo de qué es lo que se quiera representar o almacenar.
Veamos un ejemplo hipotético de aplicación para estimar el tiempo de recuperación de una inversión en años,
donde la fórmula de resolución es una división. Así, si invertí $1.000 pesos, y el ingreso anual percibido es de
$100, esto quedaría planteado de esta forma:

Para tal nivel de ingresos, la inversión se recuperaría en 10 años.


¿Notaste cómo los conceptos fueron reemplazados por números?
Cantidad invertida = $1.000
Ingresos anuales = $100
Años = 10
Esta es la idea detrás de las variables, veamos cómo se vería en Python, y de paso vamos aprendiendo a navegar nuestro IDE.
VARIABLES (II)
Primero abramos nuestra IDE Spyder y creemos un nuevo proyecto.

Observa cómo van apareciendo las variables en nuestro


explorador de variables

En esta sección tenemos el código.


Notar que las variables no deben contener
espacios entre palabras.
Una alternativa es intercalar guiones bajos:
Cantidad_invertida

Escribiremos nuestras variables y las Acá se visualiza el resultado ¿ves como


ejecutaremos línea por línea apretando la es el mismo resultado que obtuvimos en
tecla F9. el cálculo a mano?
VARIABLES (III)
Ahora planteamos la pregunta desde otro punto de vista. Digamos que el ingreso anual es una variable cuyo valor
desconocemos, pero sí sabemos que quisiéramos poder recuperar nuestra inversión inicial de $1000 en 5 años. Esto
quedaría planteado así:

Esto se puede resolver mediante la regla de tres, la cual sigue este proceso:

Lo que en Python se vería así (recuerda que si quieres ejecutar líneas específicas de tu código, seleccionalas y pulsa F9).

Esto nos da un total de $200 pesos anuales para


recuperar la inversión en 5 años.
VARIABLES (IV)
Hito interactivo
¡Pon en práctica lo aprendido! Cambia los valores y prueba el siguiente ejercicio:
Cantidad invertida = 2500
Años de recuperación = 3
Ejecuta el código en Python ¿Cuál es el monto de ingresos anuales necesarios?
(redondeado al entero más cercano).
a) 850
b) 833
c) 5
d) 915
Correcta: b)
Feedback: el código se vería así
VARIABLES (V)
Es preciso señalar que las variables no sólo almacenan números, sino que también pueden recibir todo tipo de elementos,
como veremos más adelante. Por ejemplo, las operaciones de texto, conocidas en el contexto computacional como cadenas
(del inglés “strings”), se pueden aplicar a variables que almacenen texto.

En nuestro explorador de variables, veremos que nuestras variables


creadas ahora almacenan las respectivas cadenas, denominadas como
“str”, abreviación de “strings”.

Pero ¿Qué son estos tipos de datos? Veamos de qué se tratan.


TIPOS DE DATOS (I)

Hasta ahora hemos visto varios tipos de datos, como enteros (“int”), flotantes (“float”), y cadenas (“str”) pero ¿para
qué sirven?

En general, tienen un uso puramente computacional, ya que le dice a la máquina el formato en que determinado
elemento está ocupando una posición en la memoria y cómo debe interpretarlo. Es útil saberlo, ya que dependiendo
del tipo de dato, ciertas operaciones se ven restringidas.

Así también nos ayuda a identificar tipos de datos más complejos que utilizaremos en la siguiente sesión, como son las
listas, arreglos, tuplas y otros como los lógicos (verdadero y falso).

Partamos con el primer tipo de datos: las cadenas (strings).


TIPOS DE DATOS (II)
Una cadena o string (str en Python) es creada al escribir un texto entre comillas dobles o simples, por ejemplo, “hola mundo”
u ‘hola mundo’. 
Algunos caracteres no pueden ser escritos directamente en una cadena, como el caso de las comillas simples y dobles. Para
incluirlas, debemos agregar el símbolo “\”. 
Observa los siguientes ejemplos:

Al igual que los enteros y flotantes, las cadenas pueden ser “sumadas” o unidas mediante el símbolo “+”, lo que se conoce
como concatenación. Cuando se concatenan estas palabras, no importa si fueron creadas con comillas dobles o simples.
También funciona con cadenas vacías, donde el espacio entre comillas se toma como carácter.
TIPOS DE DATOS (III)
También se pueden concatenar números si estos van
entre comillas.

Aunque no se puede sumar un número a una cadena, ya


que ambos son tipos de datos distintos.

Pero es preciso señalar que sí funciona con la


multiplicación.

No obstante, no se pueden multiplicar o aplicar


cualquier otro tipo de operación aritmética entre 2
cadenas.
TIPOS DE DATOS (IV)

Hito interactivo

¿Qué operación nos devolvería la cadena “21212121”?


a) 21 * 4
b) “21” * 3
c) "21" * 4
d) 21 * “4”

Correcta: c)
TIPOS DE DATOS (V)
Por último, existe un tipo de texto en el código que no es considerado o que no se ejecuta, los llamados “comentarios”.
La práctica de comentar el código es necesaria, ya que ayuda a hacer el código más legible. Esto porque una premisa de
la programación, es que nunca programas solo para ti. Ya sea trabajes en equipo o para una versión de ti mismo en el
futuro, comentar el código será esencial para mantener un trabajo fluido.
Los comentarios son de dos tipos:
1) comentarios de una línea indicados por el símbolo “#” antes del texto:

2) los de múltiples líneas, indicados por 3 comillas dobles:

En los script de apoyo descargables, verás una propuesta de cómo comentar código.
TIPOS DE DATOS (VI)

Además de las cadenas, tenemos otros tipo de datos más complejos, que nos permitan almacenar otros tipos de
valores. Algunos ejemplos son las “listas” o “tuplas”, a las cuales les ingresamos valores separados por comas.

La función type() permite identificar el tipo de dato de un objeto. Aunque este también es visible en el explorador
de variables, muchas veces trabajaremos con múltiples elementos, por lo que el explorador podría resultar poco
práctico.
TIPOS DE DATOS (VII)
Los tipos de datos “lista” tienen propiedades muy útiles que utilizaremos en las próximas sesiones.

Entre ellas, nos da la opción de indexar, es decir, indicar la posición de un elemento dentro de la lista,
donde la primera posición empieza en 0. Así, si quisiéramos recuperar el segundo elemento de esta lista,
lo hacemos de la siguiente manera:

Y si quisiéramos recuperar el primer elemento de la lista, utilizaremos “lista[0]” ¡Inténtalo en tu IDE!

Otra propiedad interesante de las listas, es que puedes agregarle y quitarle cosas. Por ejemplo, para quitar un elemento
agregaremos “.pop()”. Este removerá el último elemento de la lista. Si le indicamos un índice, eliminará el elemento de ese
índice (volveremos a crear la lista para probar esta funcionalidad ejecutando esta línea con F9).
TIPOS DE DATOS (VIII)

Así también podemos modificar alguno de los valores dentro de la lista de esta forma (nuevamente reiniciamos nuestra
lista antes de ejecutar cada comando). En este caso modificamos el tercer valor.

Por último, podemos agregar elementos a la lista usando el método “.append()”, el cual lo agregará al final de la lista.

El objeto lista tiene múltiples otros métodos tales como “.sort()” o “.count()”, los que te invitamos a explorar.
Notar que le llamamos “objeto” lista, los objetos son otro tipo de datos un tanto más complejos, que veremos más
adelante.
TIPOS DE DATOS (IX)
Booleanos

Otro tipo de dato de gran importancia son los valores lógicos, identificados como “bool”, de booleanos.

Este tipo de valores representan las reglas de la lógica, expresada en la evaluación de enunciados como verdaderos o falsos.
En esta tabla se resumen los símbolos y sus ejemplos con operadores de comparación.
Operación Símbolo Ejemplo Resultado Descripción
Menor que < 3<5 True Evalúa si el valor izquierdo es menor al derecho y viceversa
Mayor que > 4>6 False Evalúa si el valor izquierdo es mayor al derecho y viceversa
Evalúa si 2 términos son iguales. Notar que evalúa igualdad
Igual que == 2.01 == 2 False exacta, así una diferencia decimal entre 2 valores ya los
vuelve distintos
Evalúa si el valor izquierdo es menor o igual que el derecho
Menor o igual
que
<= 4 <= 4 True y viceversa (notar que aunque 4 < 4 sería evaluado como
“False”, al ser “o igual”, admite la posibilidad de igualdad)
Evalúa si el valor izquierdo es mayor o igual que el derecho y
Mayor o igual que >= 5>=5 True viceversa (lo mismo que antes, admite posibilidad de
igualdad)
Evalúa si un término es distinto de otro, en este caso ambos
Distinto de != 9 != 9 False son iguales, así que es falso
TIPOS DE DATOS (X)
Aquí es necesario notar que “True” o “False” son expresiones propias de Python, con las cuales se capturan este tipo de
valores, así por ejemplo, podemos generar la siguiente proposición:

Lo que está entre paréntesis se evalúa como verdadero y luego es verdadero que “True == True”. Suena complejo, pero lo
iremos viendo con mayor detalle en los siguientes ejercicios.
Por último, existe un tipo especial de operadores lógicos que permiten trabajar con expresiones más complejas de lógica, como
son las proposiciones compuestas, cuya dinámica se puede representar en tablas de verdad, como las siguientes:
Expresión Notación Expresión Notación
Expresión Notación
Y and O or
NO not
Proposició Proposició Conclusión Proposición Proposició Conclusión
n1 n 1 n Proposició Negación
2 2 n
True True True True True True True False
True False False True False True False True
False True False False True True
False False False False False False
TIPOS DE DATOS (XI)
Veamos un ejemplo de cada tipo
Uso de “and”. Uso de “and” pero esta vez
con resultado falso.

Dado que 2 + 2 es igual a 4, la proposición 1 es Dado que en la recta numérica el 3 está después del 1, sabemos
verdadera, y verdadero “and” verdadero es igual a que el 3 es mayor que el 1, por lo tanto la proposición 1 es falsa,
verdadero. mientras que la proposición 2 es verdadera, y verdadero “and”
falso es falso.

Uso de “or”. Usando “or”, una


sentencia es falsa si ambas
proposiciones son falsas.

3 elevado a 2 es 9, así que la proposición 1 es Aunque ambas cadenas parezcan iguales, se diferencian por una
verdadera, pero 2 + 2 no es igual a pez, por lo que la mayúscula y minúscula. Una propiedad de las cadenas es que son
proposición 2 es falsa, y verdadero “or” falso da sensibles a estos cambios (case sensitive), por lo que ambas
como resultado verdadero. proposiciones son falsas, y falso “or” falso es igual a falso.
TIPOS DE DATOS (XII)
Por último, en el caso de la indicación “not”, simplemente invierte cualquier enunciado de esta forma:

Si lo pusieramos en español sería como afirmar que algo “no verdadero” es algo falso, mientras que algo “no falso” es
algo verdadero.

Con “not” podemos invertir o negar cualquier sentencia, por ejemplo si tomamos uno de los ejemplos anteriores:

Sabemos que la proposición 1 y 2 son verdaderas, y que verdadero “and” verdadero es verdadero. No obstante, al negar
la proposición 1 con “not”, obtenemos su resultado opuesto, y falso “and” verdadero es falso.
Un último detalle interesante sobre los valores booleanos, es que para el computador son números, 0 y 1, e incluso
puedes aplicar operaciones aritméticas en estos.
TIPOS DE DATOS (XIII)
Hito interactivo

¿Cuales de los siguientes enunciados produce un valor verdadero (True)? (Prueba en Python los que
no tengas claro).
a) True and True == 1
b) False or False
c) 8 / 2 == 4 and 2 * 6 == 12 Pista: ¿recuerdas el rol de los paréntesis en tus
d) not True and True clases de matemáticas? En los ejercicios de
e) not not True lógica funcionan de la misma forma.
f) False * 5 == 0
g) False * 5 == False
h) not (True and True) and (2 * 3 == 6)

Correcta: a), c), e), f), g)


Feedback: ¿Desafiante, no? En la sección de funciones veremos en más detalle la aplicación de lógica, y por qué es tan útil
entenderla bien para programar.
CIERRE

¡Felicidades! Completaste la Sesión 2 del curso.

En esta sesión aprendiste elementos básicos de la sintaxis y la programación en este lenguaje, entre estos: la definición de
variables, algunos tipos de datos con que trabaja como las cadenas, las listas y los valores booleanos, de gran importancia para
programar eventos más complejos.

Te invitamos a que descargues el script de la Sesión 2, donde encontrarás todos los elementos vistos, podrás replicarlos y jugar
con estos. Te pueden servir como un ayuda memoria para lo que veremos a continuación.

En la siguiente sesión profundizaremos en más conceptos de Python como son los objetos, las funciones y las librerías.

¡Nos vemos!

También podría gustarte