Marco Buttu
Título original de la obra:
Programmare con Phyton – Guida completa
Marco Buttu
© 2014 Edizioni LSWR
Título de la versión en español de la obra:
El Gran libro de Phyton
Traducción: Sònia Llena
Diseño de la cubierta: ENEDENÚ ESTUDI DISSENY GRÀFIC
Primera edición, 2016
© 2016 MARCOMBO, S.A.
www.marcombo.com
Esta edición de El Gran libro de Phyton ha sido publicada en colaboración con Edizioni LSWR.
This edition of Programmare con Phyton – Guida completa by Marco Buttu is published by arrange-ment with Edizioni LSWR.
«Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta obra sólo puede ser realizada con la autorización de sus titulares, salvo excepción prevista por la ley.»
INTRODUCCIÓN Introducción Python es un lenguaje de programación multiplataforma, consistente y maduro, en el cual confían con éxito las empresas y organizaciones más prestigiosas a nivel mundial, como Google, YouTube, Intel, Yahoo! y la NASA. Son múltiples los campos en los que se utiliza: aplicaciones web, juegos y multimedia, interficies gráficas, networking, aplicaciones científicas, inteligencia artificial, programación de sistemas, entre muchos otros. El objetivo de este libro es enseñar a programar con Python en el modo correcto (The Pythonic Way). El tema central es, por tanto, el lenguaje, en todos sus aspectos, que se aborda detalladamente tanto desde el punto de vista teórico como práctico. El libro está actualizado a la versión 3.4 de Python, lanzada en el año 2014.
1. LOS FUNDAMENTOS DEL LENGUAJE 1
Introducción a Python Introducción a Python Python nace en diciembre de 1989 de manos del informático holandés Guido van Rossum. Tras haber estado trabajando durante cuatro años (de 1982 a 1986) en el desarrollo del lenguaje de programación ABC, en el Centrum voor Wiskunde & Informatica (CWI) de Amsterdam, en 1986 Guido empieza a colaborar en el desarrollo de Amoeba, un sistema operativo distribuido nacido también en Amsterdam (1981), en la Vrije Universiteit. A finales de los ochenta, el equipo se da cuenta de que Amoeba necesita un lenguaje de scripting, por lo que Guido, mientras pasa las vacaciones de Navidad de 1989 en su casa, tanto por hobby como por contribuir en el desarrollo de Amoeba, decide poner en marcha un proyecto personal. Intenta utilizar todo cuanto ha aprendido durante el tiempo de trabajo con ABC y, aunque aquella experiencia fue más bien frustrante, algunas de las carácterísticas de ABC le gustan y decide utilizarlas como fundamentos para su nuevo lenguaje: • la sangría para indicar los bloques de instrucciones anidadas; • alguna instrucción de variables; • cadenas de caracteres y listas de longitud arbitraria. Sobre estas bases empieza a escribir en C un intérprete para su futuro lenguaje de programación, que bautiza con el nombre de Python en honor a su serie de televisión favorita: Monty Python’s Flying Circus. En 1990, Guido finaliza la primera implementación del intérprete, que implanta en la CWI para uso interno. En febrero de 1991, hace público el código en alt.sources, indicando como versión la 0.9.0. En 1994 se crea comp.lang.python, el primer grupo de discusión sobre Python, y el año siguiente nace el sitio web oficial: www.python.org.
Introducción al lenguaje Introducción al lenguaje En esta sección hablaremos de aspectos carácterísticos de Python, de los principales tipos integrados, de la definición de funciones y clases, de los archivos, de la librería estándar y de los módulos. Esta pretende ser solo una breve introducción al lenguaje, puesto que hablaremos con más profundidad de estos aspectos en el resto del libro.
Los elementos del código Python
Arquitectura de un programa Python
La Python Virtual Machine
Etiquetas y objetos
Tipos de errores
Objetos iterables, iteradores y contexto de iteración
Ejercicio final
2. EL CORAZÓN DEL LENGUAJE
Números
Operaciones y funciones integradas utilizables con objetos iterables
Los conjuntos matemáticos
Diccionarios
Las secuencias
Ejercicio final
3. FUNCIONES, GENERADORES Y ARCHIVOS
Definición y llamada de una función
Funciones anónimas
Introspección de funciones
Generadores
Archivos
Ejercicio final
4. MÓDULOS, PAQUETES, ENTORNOS VIRTUALES Y APLICACIONES
Módulos
Espacio de nombres, ámbito y resolución de nombres
Instalación de paquetes
Entornos virtuales
Ejercicio final
5. CLASES Y PROGRAMACIÓN ORIENTADA A OBJETOS
Clases e instancias
Un primer vistazo a la sobrecarga
La composición
La herencia
La decoradores
Los métodos y las propiedades
Introducción a los patrones de diseño
Las excepciones
La instrucción with y los gestores de contexto
Ejercicio final
6. ATRIBUTOS MÁGICOS, METACLASES Y DESARROLLO GUIADO POR PRUEBAS
El modelo a objetos de Python
Los atributos mágicos
Metaclases
Desarrollo guiado por pruebas
Ejemplo práctico de uso del desarrollo guiado por pruebas
Las enumeraciones
Ejercicio final
APÉNDICE A - DESCRIPCIÓN DE LOS COMANDOS UNIX-LIKE UTILIZADOS EN EL LIBRO
cat
chmod
cut
diff
echo
find
grep
head
ln
ls
mkdir
more
mv
pwd
rm
sed
source
tail
tar
time
touch
tree
wc
wget
which
zip
Los metacaracteres
Variables de entorno
APÉNDICE B - PRINCIPALES PUNTOS DE ROTURA ENTRE PYTHON 2 Y PYTHON 3
Incompatibilidades entre las dos versiones
Migración automática de Python 2 a Python 3
APÉNDICE C - EL BUFFERING DE LOS ARCHIVOS
Python es un lenguaje de programación multiplataforma, consistente y maduro, en el cual confían con éxito las empresas y organizaciones más prestigiosas a nivel mundial, como Google, YouTube, Intel, Yahoo! y la NASA. Son múltiples los campos en los que se utiliza: aplicaciones web, juegos y multimedia, interficies gráficas, networking, aplicaciones científicas, inteligencia artificial, programación de sistemas, entre muchos otros.
El objetivo de este libro es enseñar a programar con Python en el modo correcto (The Pythonic Way). El tema central es, por tanto, el lenguaje, en todos sus aspectos, que se aborda detalladamente tanto desde el punto de vista teórico como práctico.
El libro está actualizado a la versión 3.4 de Python, lanzada en el año 2014.
El libro va dirigido tanto a aquellos que quieren empezar a programar con Python como a los que ya conocen el lenguaje y desean profundizar en los argumentos más avanzados, como los decoradores, las metaclases y los descriptores.
La lectura será probablemente más entretenida para aquellos que tienen experiencia en programación, pero el libro es accesible a todos, puesto que nada se da por sabido. De hecho, se parte del estudio de las bases del lenguaje hasta llegar, siguiendo un recorrido gradual elaborado en torno a una amplia serie de ejemplos y ejercicios, a los argumentos más avanzados.
Este libro no es solo una guía de Python, sino también un manual de programación, puesto que se tratan numerosos temas de carácter general, como la aritmética del ordenador y las problemáticas relacionadas con ella, el estándar Unicode y el desarrollo guiado por pruebas.
Читать дальше