Semana1 Repaso PythonV2.1
Semana1 Repaso PythonV2.1
Fundamentos de Programación
Repaso de Python Básico
Docentes:
Loreto Marín Carcey
Piero Montenegro Zamora
¿Qué es Python?
2
Entorno de Desarrollo Integrado (IDE)
o Autocompletar
• Vamos a probarlo!
15
Tipos de datos
Texto (str)
>>> “Hola”
>>> ‘Hola’
>>> “Bernardo O’Higgins”
>>> ‘Le decían “usted”‘
Expresiones y operadores
• Expresión: combinación de valores y operadores que al ser evaluados entregan
un resultado.
• Operador: símbolo en una expresión que representa una operación aplicada a los
valores.
• Operadores aritméticos:
- Suma (+)
- Resta (-)
- Multiplicación (*)
- División (/)
- División entera (//)
- Módulo (%)
- Potencia (**)
Ejemplos de expresiones
>>> 2 * 3 + 4
10
>>> x = 3.5
>>> 5 + x ** 2
17.25
>>> “tagua” * 2
‘taguatagua’
>>> len(‘amarillo’)
8
Llamado a funciones y uso de bibliotecas
>>> abs(62-500)
438
>>> round(79.5)
80
1. +, -
2. *, /, //, %
3. +x, -x, (unario)
4. **
5. abs(), randint() (llamada a funciones)
6. (, ) (paréntesis)
Conversión entre tipos de datos
• >>> int(3.5)
3
• >>> float(“39”)
39.0
• >>> str(25)
“25”
• >>>bool(0.0)
False
Asignación de variables
• La asignación de variables es de la siguiente forma:
<variable> = <expresión>
1 . S e evalúa la expresión
2 . S e asigna el resultado de la evaluación, a la variable
¿ C o n qué valor quedan las siguientes variables?
>>> a = 4 + 6
>>> b = a + 4
>>> a = 2
>>> d = a – 3
>>> e = e + 1
Asignación de variables
>>> a = 4 + 6
>>> b = a + 4
>>> a = 2
>>> d = a - 3
>>> e = e + 1
Entradas y salidas
• Entrada de datos
print(“hola mundo”)
a = 10
x = a ** 2
print(a, ‘al cuadrado es’, x)
print(a, x)
print(a)
print(x)
Comentarios en el código
4
9
¿Dónde estamos?
Introducción a Python 3
⮚ Estructuras condicionales
• Estructuras repetitivas
• Funciones y strings
• Estructuras de datos
• Listas y tuplas
• Diccionario y conjuntos
• Archivos
21
Qué veremos en este bloque
22
Operadores relacionales
• Igual a (==)
• Distinto (!=)
• Disyunción lógica: or
24
Sentencias condicionales: if
Sintaxis:
if condición:
instrucciones
26
Sentencias condicionales: if
Ejemplo:
Nota 1: 80
Nota 2: 33
Nota 3: 20
Su promedio es 44
Nota 1: 100
Nota 2: 100
Nota 3: 80
Su promedio es 93
Felicitaciones!
47
Sentencias condicionales: if-else
Sintaxis:
if condición:
instrucciones en caso verdadero
else:
instrucciones en caso falso
28
Sentencias condicionales: if-else
29
Sentencias condicionales: if-else
Ejemplo:
Nota 1: 79
Nota 2: 40
Nota 3: 10
Usted reprobo con 43
Nota 1: 99
Nota 2: 100
Nota 3: 56
Usted aprobo con 85 50
Sentencias condicionales: if-elif-else
La sentencia if-elif-else depende de dos o más condiciones. L a primera que sea
verdadera determinará qué instrucciones se ejecutarán.
Sintaxis:
if condición1:
instrucciones si condición 1 es verdadera
elif condición2:
instrucciones si condición 2 es verdadera
elif condición3:
instrucciones si condición 3 es verdadera
...
else:
instrucciones en caso que nin51guna de las anteriores fue verdadera
Sentencias condicionales: if-elif-else
52
Sentencias condicionales: if-elif-else
Ejemplo:
Nota 1: 32
Nota 2: 90
Nota 3: 99
Su promedio 74 es aceptable
Nota 1: 80
Nota 2: 100
Nota 3: 91
Su promedio 90 es excelente!
53
Listas y Tuplas
Introducción a Python 3
Estructuras condicionales
Estructuras repetitivas
Funciones y strings
Estructuras de datos
Listas y tuplas
• Diccionario y conjuntos
• Archivos
2
Listas
3
Qué veremos en este bloque
• Listas
• Crear, agregar, modificar
• Operaciones
• Funciones y métodos de listas
• Recorrido sobre listas
4
Listas
>>> lista1 = []
>>> valores = []
>>> valores.append(5)
>>> valores.append(10)
>>> valores.append(6)
>>> valores
[5, 10, 6]
>>> valores.append(-3)
[5, 10, 6, -3]
Agregar valores a una lista usando range()
• >>> nombres[-1]
• ‘Martin’
• >>> nombres.index(‘Pedro’) 1
• >>> len(nombres) 4
Modificar elementos de una lista (mutable)
• >>> nombres
• [‘Juanito’, ‘Pedro’, ‘Ana’, ‘Martin’]
Operaciones sobre listas
>>> a = [1, 2, 3, 4]
>>> b = [5, 6, 7, 8]
>>> c = a + b
>>> d = b + a
>>> c
[1, 2, 3, 4, 5, 6, 7, 8]
>>> d
[5, 6, 7, 8, 1, 2, 3, 4]
2. Repetición de listas (*)
>>> a = [1,4,6]
>>> b = a * 3
b
[1, 4, 6, 1, 4, 6, 1, 4, 6]
3. Verificar si un elemento está en la lista
a = [1,2,3,4]
>>> 10 not in a
True
>>> 6 in a
False
4. Eliminación de elementos de una lista
• Por posición:
>>> lista[3:5]
[7, 9]
>> lista[3:]
[7, 9, 11, 13]
>>> lista[:3]
[1, 3, 5]
>>> lista[::-1]
[13, 11, 9, 7, 5, 3, 1]
TUPLAS
• Qué son
• Creación de tuplas
• Desempaquetado
• Usos recomendados
• Listas de tuplas
28
Tuplas
>>> t1 = tuple()
>>> t2 = ()
>>> t3 = (1, 2, 3)
>>> t4 = (1, (1,2), True, ‘hola’)
Desempaquetado de tuplas
Dos tuplas son iguales cuando tienen el mismo largo y los elementos son idénticos.
>>> (3, 3, 0) == (3, 3)
False
>>> (1, 2, 3) == (1, 2, 0)
False
>>> (1, 2, 3) == (1, 2, 3)
True
Para saber si una tupla es mayor o no a otra, se comparan los elementos en la
primera posición que sean distintos.
>>> (1,
True
>>> (1, 4, 5, 0) < (1, 4, 7)
True
2) < (1, 2, 4)
Uso recomendado de tuplas
Representar fechas
for i in range(len(autos)):
print(autos[i][1] ‘del anio’, autos[i][2])
Listas de tuplas
autos = [
(‘Subaru’, ‘Forester’, 2019),
(‘Kia’, ‘Sportage’, 2020),
(‘Hyundai’, ‘Santa fe’, 2018),
(‘Chevrolet’, ‘Captiva’, 2010),
(‘Renault’, ‘Duster’, 2020),
]
for i in range(len(autos)):
print(autos[i][1] ‘del anio’, autos[i][2])
Ciclos
63
Ciclos
64
Sentencia while
Sintaxis:
while condición:
instrucciones mientras condición sea verdadera
65
Sentencia while
66
Sentencia while
n = int(input(‘Ingrese n: ’))
i = 1
while i < n:
n = n * i
i += 1
print(n)
Preguntas:
- ¿Cómo se realiza la operación?
- ¿Cómo se asegura que termine el ciclo?
67
Ejemplo #1 de uso de ciclos
68
Ejemplo #2 de uso de ciclos
69
Patrones comunes
Ejemplo:
Escriba una programa que reciba como entrada un número entero, y que
entregue por pantalla la suma de los números al cuadrado desde 1 hasta
el valor ingresado como parámetro.
71
1. Sumar cosas
suma = 0
ciclo:
n = calcular()
suma = suma + n
72
2. Multiplicar cosas
73
2. Multiplicar cosas
prod = 1
ciclo:
n = calcular()
prod = prod * n
74
3. Contar cosas
Ingrese n: 4
9
6
4
7
La cantidad de impares ingresados es: 2
75
3. Contar cosas
cuenta = 0
ciclo:
...
cuenta = cuenta + 1
76
Patrones comunes
mayor = numero_muy_chico
ciclo:
n = calcular()
if n > mayor:
mayor = n
79
5. Encontrar el mínimo
menor = numero_muy_grande
ciclo:
n = calcular()
if n < menor:
menor = n
81
6. Generar pares de cosas (combinaciones)
82
6. Generar pares de cosas (combinaciones)
i = 1
while i < n:
while j < m:
hacer algo con i y j
j = j + 1
i = i + 1
83
Funciones
Contenidos
Ejemplos:
>>> entero = int(4.5)
>>> print(‘Hola’)
5
Definición de una función
def perimetro(r):
resultado = 2 * 3.14 * r
return resultado
7
Diferencia entre print y return
def perimetro(r):
resultado = 2 * 3.14 * r
print(resultado)
def perimetro(r):
resultado = 2 * 3.14 * r
return resultado
8
Uso de módulos
print(cos(pi/2))
print(randint(0, 10))
import math
print(math.cos(pi/2))
9
print(math.randint(0, 10))
Creación de módulos
10
Tipos de funciones
11
Tipos de funciones
def convertir_horas_minutos(total_minutos):
horas = total_minutos // 60
minutos = total_minutos % 60
return horas, minutos
>>> h, m = convertir_horas_minutos(89)
12
Tipos de funciones
13
Tipos de funciones
>>> funcion(10)
22
>>> funcion(10, 15)
35
>>> funcion(10, 15, 20)
45 14
Estructura de un string
>>> cadena = ‘’
>>> cadena2 = ‘ ’
>>> len(cadena)
0
>>> len(cadena2)
1
Estructura de un string
i = 0
while i < len(cadena):
print(‘s=’, cadena[i])
i += 1
Recorrido de strings (con for)
for c in cadena:
print(‘s =’, c)
Reemplazar secciones de un string
36
Trabajo post-clase – Ejercicio #1
Ingrese n: 3
palabra 1: sabanas
palabra 2: canales
palabra 3: cojines
La palabra mas larga es: cojines
La palabra mas corta es: sabanas
Trabajo post-clase – Ejercicio #2A