1.9.2 Comparaciones de tipos no ordenables
1.9.3 Operaciones numéricas diferentes
1.9.4 Iteradores por defecto
1.9.5 Función print
1.9.6 Migrar de Python 2 a Python 3
1.10 Instalación de Python en diferentes sistemas operativos
1.10.1 Instalación en Linux
1.10.2 Instalación en Windows
1.10.3 Instalación en Mac OS X
1.11 Distribuciones de Python
1.11.1 Anaconda
1.11.2 WinPython
1.11.3 Enthought Canopy
1.11.4 ActivePython
1.12 Instalación de librerías y módulos en Python
1.13 Manejo de entornos virtuales
1.14 Intérpretes interactivos (REPL)
1.14.1 Python
1.14.2 IPython
1.14.3 bpython
1.14.4 ptpython
1.14.5 Intérpretes online
1.15 El intérprete de Python
1.15.1 Estructura del intérprete de Python
1.16 Implementaciones de Python
1.16.1 CPython
1.16.2 Jython
1.16.3 PyPy
1.16.4 IronPython
1.17 Desarrollar programas en Python (IDE)
1.17.1 Entornos de desarrollo open source
1.17.2 Entornos de desarrollo de código cerrado
1.17.3 Comentario general sobre IDE
1.18 Primeros programas en Python
1.18.1 Ejecutar programas en el REPL de Python
1.18.2 Usar Jupyter Notebook
1.18.3 Primeros programas ejecutados desde ficheros
CAPÍTULO 2 VARIABLES Y TIPOS DE DATOS
1 Introducción a los tipos de datos
2 Literales, variables y datos en Python
2.1 Literales
2.2 Variables e identificadores
2.3 Gestión de memoria en Python
2.4 Mutabilidad de variables
3 Tipos booleanos
3.1 Operaciones con booleanos
3.2 Cortocircuito lógico
4 Comparaciones
5 Tipos numéricos
5.1 Operaciones numéricas básicas
5.2 Enteros
5.3 Operaciones a nivel de bits con enteros
5.4 Números de coma flotante
5.5 Números complejos
5.6 Utilizar distintos tipos numéricos
6 Secuencias
6.1 Listas
6.2 Tuplas
6.3 Rangos
6.4 Selección de subsecuencias basadas en índices (slices)
6.5 Operaciones predefinidas para secuencias
7 Secuencias de caracteres
7.1 Construir cadenas de caracteres
7.2 Convertir caracteres a números y viceversa
7.3 Operaciones de búsqueda de caracteres y conteo
7.4 Operaciones relacionadas con el tamaño de letra
7.5 Operaciones de identificación de cadenas
7.6 Operaciones relacionadas con la codificación
7.7 Traducciones, reemplazos y mapeos
7.8 Funciones de manipulación de cadenas: limpiado, división y unión de cadenas
7.9 Funciones de justificado y alineación de cadenas de caracteres
7.10 Formatear cadenas de caracteres
7.11 Diferentes subtipos de cadenas
7.12 Cadenas f-string en profundidad
7.13 Introducción al minilenguaje de formateado de strings
7.14 Función para imprimir caracteres (print)
8 Secuencias binarias
8.1 Qué son los datos binarios
8.2 Tipos bytes y bytearray
8.3 Operaciones con bytes y bytearray
8.4 Cadenas de literales de bytes (byte literals)
9 Conjuntos (set y frozenset)
9.1 Funciones de actualización de conjuntos
9.2 Funciones para operar conjuntos
9.3 Operaciones condicionales para conjuntos
10 Mapas (diccionarios)
10.1 Explorar valores de diccionarios
10.2 Actualizar valores en diccionarios
10.3 Objetos de tipo vista en diccionarios (view objects)
11 Iterables e iteradores
11.1 Operadores para trabajar con iterables
12 Expresiones generadoras
12.1 Inicializar tipos por comprensión
12.2 Inicializar objetos con expresiones generadoras
CAPÍTULO 3 FUNDAMENTOS DEL LENGUAJE
1 Asignaciones simples y múltiples
1.1 Asignaciones simples
1.2 Asignaciones de múltiples variables
1.3 Asignaciones múltiples
1.4 Asignaciones slicing con *
2 Control de flujo de ejecución
2.1 Control de flujo condicional con las sentencias if, elif y else
2.2 Implementaciones de switch case en Python
2.3 Sentencia if ternaria
3 Flujo de ejecución con bucles
3.1 Analizando bucles while
3.2 Usar bucles con sentencia for
3.3 Control de flujo dentro de bucles: break y continue
4 Operador walrus para asignar
5 Funciones en Python.
5.1 Ejemplo de modularización de código
5.2 Parámetros y argumentos en funciones
5.3 Uso de args y kwargs
5.4 Anotaciones y tipado en las funciones
5.5 Funciones recursivas
5.6 Funciones anónimas: expresiones lambda
5.7 Funciones de orden superior
5.8 Funciones dentro de funciones
5.9 Espacio de nombres y contextos
5.10 Memoización
5.11 Decoradores
5.12 Documentación de funciones
5.13 Funciones generadoras
5.14 Corrutinas
5.15 Funciones asíncronas
6 Excepciones
6.1 Controlar el flujo de ejecución con excepciones
6.2 Utilizar las trazas de error
6.3 Excepciones conocidas
6.4 Elevar excepciones de forma manual
6.5 Definición de excepciones propias
CAPÍTULO 4 PROGRAMACIÓN ORIENTADA A OBJETOS
1 Definición de clase
2 Atributos
2.1 Inicializar clases
2.2 Operar con los atributos
2.3 Atributos de clases
3 Nombres y privacidad en clases
4 Construcción de clases personalizadas
5 Propiedades en clases
6 Métodos
6.1 Métodos de instancia
6.2 Métodos de clase
6.3 Métodos estáticos
7 Métodos mágicos
7.1 Métodos para usar operaciones matemáticas
7.2 Emular contenedores
7.3 Personalizar el acceso a los atributos
7.4 Información sobre funciones definidas por el usuario
8 Controlar el espacio de atributos con slots
9 Duck typing o polimorfismo
10 namedtuple
11 dataclasses
12 Herencia
12.1 Herencia simple y el uso de super
12.2 Herencia múltiple
12.3 Clases Mixin
13 Metaclases y type
13.1 Creación de metaclases propias
14 Entonces, ¿cuándo se deben usar clases?
CAPÍTULO 5 ESTRUCTURA DE CÓDIGO EN PYTHON
1 Diferentes componentes de un módulo
2 Estructura básica de los paquetes
2.1 Importación de código Python
2.2 Potenciales problemas de usar import *
2.3 Evitar problemas al importar con importaciones cíclicas
2.4 Importar contenido en __init__.py
3 Repositorios de paquetes
3.1 Estructura de un paquete de Python
4 Paquetes disponibles en la librería estándar
CAPÍTULO 6 PERSISTENCIA DE DATOS EN FICHEROS
1 Ficheros de texto plano
1.1 Trabajar con ficheros sin estructura
1.2 Trabajar con ficheros de anchura definida
1.3 Trabajar con ficheros en formato CSV y TSV
1.4 XML
1.5 HTML
1.6 JSON
1.7 YAML
1.8 Librerías con todo incluido - tablib y pandas
2 Ficheros binarios
2.1 Serialización de objetos Python - pickle
2.2 Persistiendo diccionarios - shelve
3 Compresión y archivación de ficheros
3.1 Comprimir ficheros en archivos ZIP - zipfile
3.2 Archivación y compresión de ficheros - tarfile
CAPÍTULO 7 PERSISTENCIA EN BASES DE DATOS
1 Interfaz para trabajar con bases de datos DB-API
1.1 Funciones básicas para todos los conectores
1.2 Capa de abstracción de bases de datos en Python – pydal
1.3 Librería para consultas SQL en crudo – records
2 Bases de datos relacionales o SQL
2.1 Conceptos básicos de las bases de datos relacionales
2.2 Sentencias básicas en SQL
2.3 SQLite y Python
Читать дальше