Siguiente:
-1. Novedades de ``Inmersión
Subir a:
Inmersión en Python 3
Anterior:
Inmersión en Python 3
Tabla de contenido
-1. Novedades de ``Inmersión en Python 3''
-1.1 Alias ``Bajo el nivel del mar''
0. Instalación de Python
0.1 Inmersión
0.2 ¿Cuál es la versión adecuada para ti?
0.3 Instalación en Microsoft Windows
0.4 Instalación en un Mac OS X
0.5 Instalación en Ubuntu Linux
0.6 Instalación en otras plataformas
0.7 Uso de la consola interactiva de Python
0.8 Editores de texto e IDEs para Python
1. Tu primer programa en Python
1.1 Inmersión
1.2 Declaración de funciones
1.2.1 Parámetros opcionales y con nombre
1.3 Cómo escribir código legible
1.3.1 Cadenas de texto de documentación
1.4 El camino de búsqueda para import
1.5 En Python todo es un Objeto
1.5.1 ¿Qué es un objeto?
1.6 Indentar código
1.7 Excepciones
1.7.1 Capturar errores al importar
1.8 Variables sin declarar
1.9 Mayúsculas y minúsculas
1.10 Ejecución de scripts
1.11 Lecturas complementarias
2. Tipos de dato nativos
2.1 Inmersión
2.2 Booleanos
2.3 Números
2.3.1 Convertir enteros en flotantes y viceversa
2.3.2 Operaciones numéricas habituales
2.3.3 Fracciones
2.3.4 Trigonometría
2.3.5 Números en un contexto booleano
2.4 Listas
2.4.1 Crear una lista
2.4.2 Partición de listas
2.4.3 Añadir elementos a una lista
2.4.4 Búsqueda de valores en una lista
2.4.5 Eliminar elementos de una lista
2.4.6 Eliminar elementos de una lista: ronda extra
2.4.7 Listas en contextos booleanos
2.5 Tuplas
2.5.1 Tuplas en un contexto booleano
2.5.2 Asignar varios valores a la vez
2.6 Conjuntos
2.6.1 Creación de conjuntos
2.6.2 Modificación de conjuntos
2.6.3 Eliminar elementos de un conjunto
2.6.4 Operaciones típicas de conjuntos
2.6.5 Los conjuntos en contextos booleanos
2.7 Diccionarios
2.7.1 Creación de diccionarios
2.7.2 Modificación de un diccionario
2.7.3 Diccionarios con valores mixtos
2.7.4 Diccionarios en un contexto booleano
2.8 None
2.8.1 None en un contexto booleano
2.9 Lecturas complementarias
3. Comprensiones
3.1 Inmersión
3.2 Trabajar con ficheros y directorios
3.2.1 El directorio de trabajo actual
3.2.2 Trabajar con nombres de ficheros y directorios
3.2.3 Listar directorios
3.2.4 Obtener metadatos de ficheros
3.2.5 Construcción de caminos absolutos
3.3 Listas por comprensión
3.4 Diccionarios por comprensión
3.4.1 Trucos que se pueden hacer
3.5 Conjuntos por comprensión
3.6 Lecturas complementarias
4. Cadenas de texto
4.1 Temas aburridos que debes conocer antes de la inmersión
4.2 Unicode
4.3 Inmersión
4.4 Formatear cadenas
4.4.1 Nombres de campos compuestos
4.4.2 Especificaciones de formato
4.5 Otros métodos habituales de manipulación de cadenas
4.5.1 Troceado de cadenas
4.6 Cadenas de texto y Bytes
4.7 Postdata: Codificación de caracteres del código fuente de Python
4.8 Lecturas recomendadas
5. Clases e iteradores
5.1 Inmersión
5.2 Cómo se definen clases
5.2.1 El método __init__()
5.3 Instanciar clases
5.4 Variables de las instancias
5.5 Un iterador para la serie de Fibonacci
5.6 Un iterador para reglas de formación de plurales
5.7 Lecturas recomendadas
6. Refactorizar
6.1 Inmersión
6.2 Gestionar requisitos cambiantes
6.3 Refactorización
6.4 Sumario
7. XML
7.1 Inmersión
7.2 Curso rápido de 5 minutos sobre XML
7.3 La estructura de una fuente de información Atom
7.4 Análisis de XML
7.4.1 Los elementos son listas
7.4.2 Los atributos son diccionarios
7.5 Búsqueda de nodos en un documento XML
7.6 Ir más allá con LXML
7.7 Generación de XML
7.8 Análisis de XML ``estropeado''
7.9 Lecturas recomendadas
8. Serialización de Objetos en Python
8.1 Inmersión
8.1.1 Una nota breve sobre los ejemplos de este capítulo
8.2 Almacenamiento de datos a un fichero ``pickle''
8.3 Carga de datos de un fichero ``pickle''
8.4 Serialización con ``pickle'' sin pasar por un fichero
8.5 Los bytes y las cadenas de nuevo vuelven sus feas cabezas
8.6 Depuración de ficheros ``pickle''
8.7 Serialización de objetos Python para cargarlos en otros lenguajes
8.8 Almacenamiento de datos en un fichero JSON
8.9 Mapeo de los tipos de datos de Python a JSON
8.10 Serialización de tipos no soportados en JSON
8.11 Carga de datos desde un fichero JSON
8.12 Lecturas recomendadas
9. Caso de estudio: migrar chardet a Python 3
9.1 Inmersión
9.2 ¿En qué consiste la detección automática?
9.2.1 ¿Eso no es imposible?
9.2.2 ¿Existe tal algoritmo?
9.3 Introducción al módulo chardet
9.3.1 UTF-N con BOM
9.3.2 Codificaciones con código de escape
9.3.3 Codificaciones multibyte
9.3.4 Codificaciones de un solo byte
9.3.5 windows-1252
9.4 Ejecutando 2to3
9.5 Una breve disgresión sobre los módulos multifichero
9.6 Arreglando lo que 2to3 no puede
9.6.1 False es sintaxis inválida
9.6.2 No hay ningún módulo denominado constants
9.6.3 El nombre ``file'' no está definido
9.6.4 No puedes usar un patrón de cadena de texto en un objeto que representa bytes
9.6.5 No puedo convertir un objeto 'bytes' en str implícitamente
9.6.6 Tipo del operando no soportado para +: 'int' y 'bytes'
9.6.7 ord() esperaba una cadena de caracteres de longitud 1, pero encontró un int
9.6.8 Tipos no ordenables: int() >= str()
9.6.9 El nombre global ``reduce'' no está definido
9.7 Resumen
10. Empaquetando librerías en Python
10.1 Inmersión
10.2 Cosas que Distutils no puede hacer por ti
10.3 La estructura de directorios
10.4 Escribiendo el script de configuración
10.5 Clasificando tu paquete
10.5.1 Ejemplos de unos buenos clasificadores de paquete
10.6 Especificando ficheros adicionales con un ``Manifiesto''
10.7 Revisando errores en tu script de configuración
10.8 Creando un distribución de código fuente
10.9 Creando un instalador gráfico
10.9.1 Construyendo paquetes de instalación para otros sistemas operativos
10.10 Añadiendo tu software al Índice de Paquetes de Python
10.11 Los muchos futuro posibles del empaquetado de Python
10.12 Lecturas complementarias
A. Migrando código a Python 3 con 2to3
A.1 Inmersión
A.2 La sentencia print
A.3 Cadenas de caracteres Unicode
A.4 La función global unicode()
A.5 El tipo de datos long
A.6 Comparación <>
A.7 Método de diccionarios: has_key()
A.8 Métodos de diccionario que devuelven listas
A.9 Módulos que se han renombrado o reorganizado
A.9.1 http
A.9.2 urllib
A.9.3 dbm
A.9.4 xmlrpc
A.9.5 Otros módulos
A.10 Importación relativa dentro de un paquete
A.11 El método iterador next()
A.12 La función global filter()
A.13 La función global map()
A.14 La función global reduce()
A.15 La función global apply()
A.16 La función global intern()
A.17 La sentencia exec
A.18 La sentencia execfile
A.19 Literales repr (comilla invertida)
A.20 La sentencia try ...except
A.21 La sentencia raise
A.22 El método throw en generadores
A.23 La función global xrange()
A.24 Las funciones globales raw_input() e input()
A.25 Los atributos de función func_*
A.26 El método de E/S xreadlines()
A.27 Funciones lambda con parámetros tupla
A.28 Atributos especiales de métodos
A.29 El método especial __nonzero__
A.30 Literales octales
A.31 sys.maxint
A.32 La función global callable()
A.33 La función global zip()
A.34 La excepción StandardError
A.35 Constantes del módulo types
A.36 La función global isinstance()
A.37 El tipo de datos basestring
A.38 El módulo itertools
A.39 sys.exc_type, sys.exc_value, sys.exc_traceback
A.40 Listas por comprensión a partir de tuplas
A.41 La función os.getcwdu()
A.42 Metaclases
A.43 Temas de estilo
A.43.1 Literales set()
A.43.2 La función global buffer()
A.43.3 Espacios en blanco alrededor de comas
A.43.4 Idiomatismos habituales
B. Nombres de métodos especiales
B.1 Inmersión
B.2 Lo básico
B.3 Clases que actúan como iteradores
B.4 Atributos calculados
B.5 Clases que se comportan como funciones
B.6 Clases que se comportan como conjuntos
B.7 Clases que se comportan como diccionarios
B.8 Clases que se comportan como números
B.9 Clases que se pueden comparar entre sí
B.10 Clases que se pueden serializar
B.11 Clases que se pueden utilizar en un bloque with
B.12 Algunas cosas más bastante esotéricas
B.13 Lecturas recomendadas
C. Dónde continuar
C.1 Cosas para leer
José Miguel González Aguilera 2016-08-18