Este repositorio contiene material de un curso introductorio a la programación en Python. El curso está en marcha actualmente y los materiales se van actualizando conforme avanza el curso.
-
Introducción a la programación en Python
- ¿Por qué aprender a programar?
- Open Source
- Licencias de software
- ¿Por qué Python?
- Guido van Rossum
- ¿Por qué no Python?
- Documentación
- Python Enhancement Proposal
- PEP 8
- Arquitectura de una computadora
- Sistemas de numeración
- Consola de Python
- Variables, asignación y tipos básicos
- Python como calculadora
- "Pilas incluidas"
- Biblioteca estándar
- Bibiotecas de terceros
- PIP
- Anaconda
- Quiz
-
Instalación
- Variables de entorno
- Línea de comando
- Windows PowerShell
- Instalar Anaconda
- Primer script
- Quiz
-
Cómputo con Python
- Valores, variables, expresiones e instrucciones
- Lenguajes formales y naturales
- Vocabulario de Python
- Operaciones con cadenas
- Entrada del usuario
- IDLE
- Quiz
- Ejercicios
-
Ejecución condicional
- Expresiones lógicas
- Operadores de comparación
- Operadores lógicos
- Ejecución condicional
if
if
-else
if
-elif
-else
- Excepciones,
try
-except
assert
- Quiz
- Ejercicios
-
Ciclos (loops)
- Iteraciones
while
break
- Variables de bandera
continue
- Quiz
- Ejercicios
-
Funciones (primera parte)
f-strings
- Reuso de código
- Definición de funciones
- Argumentos y parámetros
- Variables y parámetros son locales
- Ventajas
- Quiz
- Ejercicios
-
Funciones (segunda parte)
docstrings
- Funciones built-in
- Parámetros posicionales
- Parámetros de keywords
- Parámetros por defecto
- Revisar función
print
- IPython
- Fernando Pérez
- Jupyter
- Quiz
- Ejercicios
-
Jupyter
Jupyter console
Jupyter qtconsole
Jupyter Notebook
Jupyter lab
- Quiz
- Ejercicios
-
Clases
- Conceptos básicos de POO
- Sintaxis
- Atributos y métodos
- Métodos "dunder"
- Quiz
- Ejercicios
-
Clases (segunda parte)
- Herencia
- Métodos de clase
str
- función
.format
- Spyder
- Quiz
- Ejercicios
-
Listas
- Métodos
a = [1, 2, 3]; b = a; b.append(4); print(a); print(b)
- Indizado
- Slices
- strings (indexing, slices) revisited
- Concepto de mutabilidad
- For loops
range
enumerate
else:
break
continue
-
Módulos
- ¿Qué son?
- ¿Cómo escribir los propios?
if __name__ == "__main__"
PYTHONPATH
-
Archivos
- Módulo
pathlib
f = open()
f.close()
- context managers
- Módulo CSV
- Módulo
-
Tuplas
- Indexing
- Mutabilidad de nuevo
- unpacking
-
Diccionarios
-
Conjuntos
-
Llamar a funciones con argumentos variables (*args, **kwargs)