¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Python 3 - Tratamiento de datos y técnicas de programación (2ª edición)

Python 3 Tratamiento de datos y técnicas de programación (2ª edición)

Información adicional

  • 5% de descuento en todos los libros
  • Envío gratis a partir de 25 € de compra
  • Versión online gratis por un año

Características

  • Encuadernación rústica - 17 x 21 cm
  • ISBN: 978-2-409-04848-7
  • EAN: 9782409048487
  • Ref. ENI: EIT23PYT

Información adicional

  • 5% de descuento en todos los libros
  • Versión online digital, no descargable
  • Consultable en línea durante 10 años inmediatamente después de la validación del pago.

Características

  • HTML
  • ISBN: 978-2-409-04849-4
  • EAN: 9782409048494
  • Ref. ENI: LNEIT23PYT
Este libro sobre el lenguaje Python 3 está dirigido a cualquier profesional informático (TI), ingeniero, estudiante, profe­sor o incluso autodidacta que desee dominar este lenguaje tan avanzado. El objetivo es mostrar al lector lo que se puede hacer con el lenguaje, desde el procesamiento de datos has­ta la creación de sitios web, pasando por la gestión de siste­mas y redes. Para conocer bien su contenido, recomendamos la lectura del libro que le sigue, Python 3 - Fundamentos del lenguaje, de...
Consultar extractos del libro Extracto del libro
  • Nivel Medio a Experto
  • Número de páginas 545 páginas
  • Publicación enero 2025
  • Nivel Medio a Experto
  • Publicación enero 2025
Este libro sobre el lenguaje Python 3 está dirigido a cualquier profesional informático (TI), ingeniero, estudiante, profe­sor o incluso autodidacta que desee dominar este lenguaje tan avanzado. El objetivo es mostrar al lector lo que se puede hacer con el lenguaje, desde el procesamiento de datos has­ta la creación de sitios web, pasando por la gestión de siste­mas y redes. Para conocer bien su contenido, recomendamos la lectura del libro que le sigue, Python 3 - Fundamentos del lenguaje, de esta misma casa editorial.

La primera parte abarca el procesamiento de datos, inclui­da la manipulación de archivos, los archivos de configuración, los formatos de importación y exportación, la gestión de la compresión, los flujos XML y la generación de documentos.

La segunda parte presenta la programación de sistemas, la programación en red, la programación web y la programación científica, todos ellos nichos en los que el lenguaje Python destaca tanto por su facilidad de uso como por su excepcio­nal cobertura funcional.

La tercera parte presenta todas las herramientas para la programación concurrente, ya sea programación asíncro­na, paralela o distribuida. Cabe destacar que se hace hin­capié en muchas técnicas asíncronas, ya que este es uno de los principales puntos de la reciente evolución del lenguaje Python.  

El código fuente de los ejemplos del libro se puede des­cargar íntegramente desde https://www.ediciones-eni.com/ para permitir al lector probar el programa y modificarlo a su gusto para hacer sus porpias pruebas.

Descargas

Vista previa
  1. Introducción
Patrones de diseño
  1. Definición
    1. 1. Situación respecto a la noción deobjeto
    2. 2. Organización del capítulo
    3. 3. Situación respecto a otros conceptos
  2. Patrones de creación
    1. 1. Singleton (Instancia única)
    2. 2. Fábrica
    3. 3. Fábrica abstracta
    4. 4. Constructor
    5. 5. Prototipo
  3. Patrones de estructuración
    1. 1. Adaptador
    2. 2. Puente
    3. 3. Composite
    4. 4. Decorador
    5. 5. Fachada
    6. 6. Peso mosca
    7. 7. Proxy
  4. Patrones de comportamiento
    1. 1. Cadena de responsabilidad
    2. 2. Solicitudes
    3. 3. Iterador
    4. 4. Memento (recuerdo)
    5. 5. Visitante
    6. 6. Observador
    7. 7. Estrategia
    8. 8. Función de callback
  5. ZCA
    1. 1. Consideraciones
    2. 2. Adaptador
    3. 3. Utilidad
    4. 4. Fábrica
    5. 5. Para ir más allá
XML
  1. XML y las tecnologías relacionadas
    1. 1. Definición de XML, terminologíaasociada
    2. 2. Noción de esquema
    3. 3. Ventajas e inconvenientes de XML
    4. 4. Distintas maneras de recorrer un archivo XML
    5. 5. Módulos Python dedicados a XML
  2. Validar un documento XML
    1. 1. Documento XML
    2. 2. Esquema DTD
    3. 3. Esquema XSD
    4. 4. Esquema RNG (RelaxNG)
    5. 5. Schematron
  3. DOM
    1. 1. Lectura
    2. 2. Escritura
  4. SAX
    1. 1. Soporte de SAX en lxml
    2. 2. API SAX ligera
  5. XPath
  6. XSLT
  7. El caso concreto de los archivos HTML
    1. 1. Problemática
    2. 2. Analizar sintácticamente un archivo HTMLsegún DOM
    3. 3. Analizar sintácticamente un archivo HTMLsegún SAX
Generación de contenido
  1. PDF
    1. 1. Presentación
      1. a. Formato PDF
      2. b. Ventajas
      3. c. Inconvenientes
      4. d. Presentación de la librería libre
    2. 2. Bajo nivel
      1. a. Librería de datos
      2. b. Canvas (Lienzo)
    3. 3. Alto nivel
      1. a. Estilos
      2. b. Flujo de datos
      3. c. Crear un elemento visual
      4. d. Plantilla de página
      5. e. Página que contiene varias zonas
  2. Generar un documento PDF a partir de una página HTML
    1. 1. Presentación
    2. 2. Instalación
    3. 3. Uso
  3. OpenDocument
    1. 1. Presentación
    2. 2. ezodf2
      1. a. Instalación
      2. b. Texto OpenDocument
      3. c. Hoja de cálculo OpenDocument
      4. d. Ir más allá
    3. 3. Alternativas
  4. Trabajar con imágenes
    1. 1. Representación informática de unaimagen
    2. 2. Presentación de Pillow
    3. 3. Formatos de imágenes matriciales
    4. 4. Recuperar información de una imagen
    5. 5. Operaciones generales sobre una imagen
    6. 6. Trabajar con las capas o los píxeles
  5. Archivos de configuración
    1. 1. Formato YAML
    2. 2. Formato TOML
Calidad
  1. Desarrollo guiado por pruebas
    1. 1. Pruebas unitarias
      1. a. Principios
      2. b. Interpretar
      3. c. Cobertura
      4. d. Herramientas
      5. e. Otras herramientas
    2. 2. Pruebas de no regresión
      1. a. Acciones de desarrollo
      2. b. Gestionar las anomalías detectadas por elcliente
    3. 3. Pruebas funcionales
    4. 4. Pruebas de rendimiento
    5. 5. Pruebas sintácticas
    6. 6. Integración continua
  2. Programación dirigida por la documentación
    1. 1. Documentación interna
      1. a. Destinada a los desarrolladores
      2. b. Destinada a los usuarios
    2. 2. Documentación externa
      1. a. Presentación
      2. b. Inicio rápido
      3. c. Resultado
  3. Optimizar
    1. 1. Medir la calidad
    2. 2. Herramientas de depuración
    3. 3. Herramientas de perfilado
    4. 4. Reglas para optimizar
      1. a. ¿Por qué optimizar?
      2. b. Reglas generales
      3. c. Optimizar un algoritmo
      4. d. Optimizar el uso de la memoria
Programación de sistema
  1. Presentación
    1. 1. Definición
    2. 2. Objetivos del capítulo
  2. Comprender su sistema operativo
    1. 1. Advertencia
    2. 2. Sistema operativo
    3. 3. Proceso actual
    4. 4. Usuarios y grupos
    5. 5. Contraseñas y autenticación
    6. 6. Constantes para el sistema de archivos
    7. 7. Administrar las rutas
    8. 8. Herramientas
      1. a. Comparar dos archivos
      2. b. Herramienta de copia de seguridad
      3. c. Leer un archivo de configuración
      4. d. Pickle
    9. 9. Comprimir y descomprimir un archivo
      1. a. Tarfile
      2. b. Gzip
      3. c. Bz2
      4. d. LZMA
      5. e. Zipfile
      6. f. Interfaz de alto nivel
  3. Gestionar un archivo
    1. 1. Cambiar los permisos de un archivo
    2. 2. Cambiar de propietario o de grupo
    3. 3. Recuperar información de un archivo
    4. 4. Eliminar un archivo
  4. Alternativas sencillas a los comandos bash usuales
    1. 1. Directorios
    2. 2. Archivos
    3. 3. Módulo de alto nivel
    4. 4. Buscar un archivo
  5. Ejecutar comandos externos
    1. 1. Ejecutar y mostrar el resultado
    2. 2. Ejecutar y recuperar el resultado
    3. 3. Para Python 3.5 y superior
  6. Sistema IHM
    1. 1. Presentación
    2. 2. Trabajar con argumentos
    3. 3. Cerrar el programa
    4. 4. Entrada estándar
    5. 5. Salida estándar
    6. 6. Salida de error
    7. 7. Tamaño del terminal
  7. Curses
    1. 1. Presentación
    2. 2. Administrar el arranque y la parada
    3. 3. Mostrar texto
    4. 4. Gestionar atributos
    5. 5. Gestionar los colores
    6. 6. Gestionar los eventos
  8. Acceso a los periféricos
    1. 1. Introducción
    2. 2. Ver las particiones
    3. 3. Ver las llaves USB
    4. 4. Lista de la información disponible
    5. 5. Detectar la conexión de una clave USB
    6. 6. Comunicar vía un puerto en serie
    7. 7. Comunicar vía un puerto USB
Programación de red
  1. Escribir un servidor y un cliente
    1. 1. Uso de un socket TCP
    2. 2. Uso de un socket UDP
    3. 3. Crear un servidor TCP
    4. 4. Crear un servidor UDP
    5. 5. Ir más allá en el tema
  2. Utilizar un protocolo estándar
    1. 1. Cliente HTTP
    2. 2. Servidor HTTP
    3. 3. Proxy
    4. 4. Cookies
    5. 5. FTP y SFTP
    6. 6. SSH
    7. 7. POP y POPS
    8. 8. IMAP y IMAPS
    9. 9. SMTP y SMPTS
    10. 10. NNTP
    11. 11. IRC
  3. Wake-on-LAN (WoL)
    1. 1. Requisitos previos
    2. 2. Implementación
Programación web
  1. Servicios web
    1. 1. REST
    2. 2. SOAP
    3. 3. Pyro
  2. Cliente web
  3. Extraer datos de la Web (Web scrapping)
Programación científica
  1. Cálculo científico
    1. 1. Presentación
    2. 2. Python, una alternativa libre y creíble
    3. 3. Descripción general de algunas librerías
  2. Tablas multidimensionales
    1. 1. Crear
    2. 2. Determinar la composición de una tabla
    3. 3. Generadores de tablas
    4. 4. Operaciones básicas
    5. 5. Operador corchete
  3. Matrices
  4. Generar gráficos
    1. 1. Sintaxis MATLAB
    2. 2. Sintaxis de objeto
    3. 3. Formatear
    4. 4. Gráficos 3D
  5. Introducción a Pandas
    1. 1. Presentación
    2. 2. Series
    3. 3. Dataframes (Estructura de datos)
Iniciación a la programación concurrente
  1. Noción de rendimiento
    1. 1. Programación bloqueante
    2. 2. Utilizar recursos de CPU
    3. 3. Organización de la aplicación
  2. Terminología
    1. 1. Proceso
    2. 2. Hilo de ejecución
    3. 3. Programación no bloqueante
    4. 4. Noción de GIL
  3. Presentación de los paradigmas
    1. 1. Programación asíncrona
    2. 2. Programación en paralelo
    3. 3. Programación distribuida
    4. 4. Programación concurrente
Programación asíncrona: iniciación
  1. Utilidad de la programación asíncrona
  2. Introducción a la asincronía
    1. 1. Noción de subrutina
    2. 2. Ejecutar una subrutina
    3. 3. Precisiones sobre la palabra clave await
    4. 4. Ejecutar varias subrutinas en serie
    5. 5. Tareas asíncronas
    6. 6. Ejecutar las tareas asíncronas de forma concurrente
    7. 7. Noción de awaitable
    8. 8. Precisiones sobre asyncio.sleep
  3. Elementos de gramática
    1. 1. Administrador de contexto asíncrono
    2. 2. Generadores asíncronos
    3. 3. Comprensión asíncronas
    4. 4. Iteración asíncrona
  4. Nociones avanzadas
    1. 1. Introspección
    2. 2. Gestionar el resultado o la excepción
    3. 3. Cancelar una tarea
    4. 4. Proteger contra una cancelación
    5. 5. Timeouts
    6. 6. Gestión global afinada de la espera
    7. 7. Módulo contextvars
  5. Bucle orientado a eventos asíncrono
    1. 1. Gestionar bucles
    2. 2. Depurar
    3. 3. Noción de futuro
    4. 4. Cancelar
    5. 5. Gestionar excepciones
  6. Utilizar bucles orientados a eventos
    1. 1. Utilizar las funciones de retrollamada (callbacks)
    2. 2. Planificar las llamadas a las funciones clásicas
    3. 3. Utilizar señales
    4. 4. Sincronizar
    5. 5. Comunicación entre subrutinas
    6. 6. Ejemplo: lectura de la entrada estándar
    7. 7. Programación en modo paralelo y asíncrono
    8. 8. Ejecutar código bloqueante
  7. La asincronía según las versiones de Python
    1. 1. Python 3.7
    2. 2. Python 3.6
    3. 3. Python 3.5
    4. 4. Python 3.4
    5. 5. Python 3.3 e inferior
    6. 6. Python 2.7
  8. Caso concreto
    1. 1. Ejemplo de trabajo
  9. Ejemplo adaptado usando generadores
    1. 1. Descargar en modo asíncrono
    2. 2. Análisis sintáctico en modo asíncrono
    3. 3. Hacer varios tratamientos en modo asíncrono
    4. 4. Utilizar un ejecutor
    5. 5. Para ir más lejos
Programación asíncrona: avanzada
  1. Transportes y protocolos
    1. 1. Introducción
    2. 2. Transportes
    3. 3. Protocolos
    4. 4. Implementación
    5. 5. Ejemplo para el protocolo TCP
    6. 6. Ejemplo para el protocolo SSL
    7. 7. Ejemplo para el protocolo UDP
    8. 8. Tratar otros tipos de protocolos de red
    9. 9. Ejemplo para Subprocess
  2. Flujo
    1. 1. Introducción
    2. 2. Ejemplo con el protocolo TCP
Programación asíncrona: alternativas
  1. Gevent
    1. 1. Introducción
    2. 2. DNS
    3. 3. Llamadas de sistema
    4. 4. Programación asíncrona
  2. Twisted
    1. 1. Introducción
    2. 2. Cliente/servidor TCP
    3. 3. Servidor/cliente UDP
    4. 4. AMP
    5. 5. Otros protocolos
  3. Trollius
  4. HTTP asíncrono con aiohttp
    1. 1. Lado servidor
    2. 2. Lado cliente
Programación en paralelo
  1. Uso de un hilo de ejecución
    1. 1. Gestionar un hilo de ejecución
      1. a. Presentación
      2. b. Crear
    2. 2. Gestionar varios hilos de ejecución
      1. a. Lanzar y controlar
      2. b. Oportunidad de utilizar un hilo de ejecución
    3. 3. Resolver los problemas relacionados
      1. a. Sincronizar
      2. b. Sincronizar con condición
      3. c. Semáforo
  2. Uso de proceso
    1. 1. Gestionar un proceso
      1. a. Presentación
      2. b. Crear
    2. 2. Gestionar varios procesos
      1. a. Sincronizar
      2. b. Paralelizar un trabajo
    3. 3. Resolver los problemas relacionados
      1. a. Comunicación interproceso
    4. 4. Compartir datos entre procesos
    5. 5. Oportunidad de utilizar los procesos
    6. 6. Demonio
  3. Ejecutar de forma asíncrona
    1. 1. Introducción
    2. 2. Presentación
Programación distribuida
  1. Definiciones
  2. ØMQ
    1. 1. Presentación general
    2. 2. Pair
    3. 3. Cliente/servidor
    4. 4. Publish/subscribe
    5. 5. PUSH/PULL
    6. 6. Patrón pipeline
  3. AMQP con RabbitMQ
    1. 1. Instalar
    2. 2. Configurar
    3. 3. Introducción
    4. 4. Nociones importantes
    5. 5. Publish/subscribe
    6. 6. Enrutamiento y temas
  4. Kafka
    1. 1. Presentación
    2. 2. Principios generales
    3. 3. Cliente Kafka
    4. 4. Faust
  5. Celery
    1. 1. Presentación
    2. 2. ¿En qué caso utilizar Celery?
    3. 3. Instalar
    4. 4. Configurar
    5. 5. Utilizar
    6. 6. Monitorizar
  6. Crossbar
    1. 1. Presentación
    2. 2. WebSocket
    3. 3. Publish/subscribe
Autor : Sébastien CHAZALLET

Sébastien CHAZALLET

Sébastien Chazallet es un experto técnico en Python/Django y Web Backend/Frontend que trabaja como autónomo en tareas de desarrollo, auditoría, peritaje y formación a largo plazo (www.formation-python.com, www.inspyration.fr). Su trabajo, basado en Python, se centra en el desarrollo de proyectos a gran escala, principal­mente aplicaciones de intranet perso­nalizadas utilizando Django, pero tam­bién aplicaciones de escritorio, scripts de sistema, creación de sitios web y de comercio electrónico. A través de este libro, ha hecho que el lector se benefi­cie de su perfecto dominio de la última versión del lenguaje Python y de la experiencia de campo que ha adquirido en sus diversas misiones.
Más información

Descubrir todos sus libros

  • Python 3 Pack de 2 libros: de la algoritmia al dominio del lenguaje (2ª edición)
  • Pygame Pack de 2 libros: Desarrollo de videojuegos en Python
  • Python 3 Los fundamentos del lenguaje (4ª edición)

Novedades

Ver más