Código de los libros:
- Learning Python -5th edition- por Mark Lutz
- Python Notes for Professionals, free programming books de GoalKicker.com
-
Strings - Manipulación y operaciones con cadenas de texto
-
Variables, Referencias y Objetos - Conceptos fundamentales sobre variables y objetos en Python
- Objetos Inmutables
- Objetos Mutables
- Shared References and Equality
- Cache
-
Regla LEGB - Explicación de la regla de alcance LEGB
- GLOBAL SCOPE
- LEGB rule
- NESTED SCOPES
- Factory Functions: Closures
-
Operaciones sobre Listas - Manipulación y operaciones con listas
- Basic List Operations
- List Iteration and Comprehension
-
Operaciones sobre Diccionarios - Trabajo con diccionarios y sus métodos
- Cambiando diccionarios in place
- Métodos de un objeto diccionario
- values
-
Conjuntos - Operaciones y manipulación de conjuntos
- Operaciones sobre conjuntos
- Operaciones matemáticas (unión, intersección, diferencia)
- Supersets y subsets
-
Operadores Lógicos - Uso de operadores lógicos y condicionales
- Operadores lógicos
- and
- or
- Tablas de verdad
-
Argumentos - Manejo de argumentos en funciones
- Arguments and Shared References
- Special Argument-Matching Modes
- Arbitrary Arguments Examples
-
Excepciones - Manejo de errores y excepciones
- Sintaxis de la sentencia try
- Ejemplo try
- Jerarquía de Excepciones
-
Módulos - Importación y uso de módulos
- Creación módulos
- Uso de módulos
- sys.path
- Sentencia import
- Sentencia from
- Sentencia from *
- Importación única
-
List Comprehensions - Creación de listas mediante comprensión
- Extended List Comprehension Syntax
- Filter clauses: if
- Bucles anidados: for
- Tuples
- Range
-
Comprensiones y Generadores - Uso avanzado de comprensiones y generadores
- List Comprehensions and Functional Tools
- Example: List Comprehensions and Matrixes
- Don't Abuse List Comprehensions: KISS
-
Programación Funcional - Herramientas de programación funcional
- Anonymous Functions: lambda
- Mapping Functions over Iterables: map
- Multiple sequence arguments
- Selecting Items in Iterables: filter
- Combining Items in Iterables: reduce
- Ejercicios propuestos
-
Ejercicios Codewars Funcional - Ejercicios prácticos de programación funcional
Para eliminar los metadatos de un jupyter notebook instala el paquete nb-clean:
python -m venv venv
source venv/bin/activate
pip install nb-clean
python -m venv venv
source venv/bin/activate
pip install -r requirementents.txt
En mi caso, preservo las salidas de las celdas puesto que me interesa dejarlas en seguimiento git, ya que forman parte de la documentación. El resto de metadatos, sobretodo el número de ejecuciones de la celda, las elimino para evitar cambios en el index.
Despues de ejecutar una o todas las celdas de un notebook ejecuta desde consola:
nb-clean clean --preserve-cell-outputs conjuntos.ipynb