PYTHON A FONDO
Óscar Ramírez Jiménez
Acceda a www.marcombo.infopara descargar gratis contenido adicional complemento imprescindible de este libro
Código: PYTHON6
PYTHON A FONDO
Óscar Ramírez Jiménez
Python a fondo
Primera edición, 2021
© 2021 Óscar Ramírez Jiménez
© 2021 MARCOMBO, S. L.
www.marcombo.com
Diseño de cubierta: ENEDENÚ DISEÑO GRÁFICO
Revisor técnico: Ferran Fábregas
Corrección: Haizea Beitia y Manel Fernández
Maquetación: D. Márquez
Directora de producción: M. aRosa Castillo
«Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta obra solo puede ser realizada con la autorización de sus titulares, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de esta obra».
ISBN: 978-84-267-3287-3
Producción del ePub: booqlab
Motivación y agradecimientos
Desde que era un niño siempre me gustó la idea de dejar huella en los demás y aportar mi granito de arena a la sociedad de una forma u otra, de ahí que desde que conocí el desarrollo de software, siempre haya tenido especial predilección por el software libre y el compartir el conocimiento con los demás.
En esta ocasión, el sentimiento de compartir el conocimiento con los demás me ha llevado a escribir lo que he aprendido en todos estos años de trabajo, desarrollando aplicaciones y creciendo como profesional, de la forma en la que me hubiera gustado aprenderlo cuando comencé mi carrera.
Por lo tanto, me gustaría agradecerles a todos los que han hecho posible este sueño, y dado que son muchísimas las personas las que han dejado huella en mí, desde profesores de universidad tanto de Málaga como de Horsens, compañeros de estudios, compañeros de trabajo, amigos, etc., no podría nombrarlas una a una sin olvidar a alguien, por lo que prefiero agradecerles a todas su apoyo. Aunque sí que me gustaría agradecer de forma especial a mi familia, la que me ha apoyado desde siempre con todos mis proyectos, estudios y en mi carrera profesional, y, cómo no, a mi compañera de viaje, la cual ha sufrido más que nadie el robo de horas que compartir juntos con el fin de poder realizar esta obra, gracias Salva.
Me gustaría también agradecer la oportunidad y la confianza depositada en mí por parte de la editorial Marcombo, la cual apostó por mí para este proyecto desde primera hora y siempre ha estado dispuesta cuando se ha necesitado.
CAPÍTULO 1 INTRODUCCIÓN AL LENGUAJE PYTHON Capítulo 1 INTRODUCCIÓN AL LENGUAJE PYTHON Hoy día, la tecnología se ha vuelto un elemento fundamental para todos los seres humanos. Existen dispositivos que ayudan a realizar casi todas las actividades cotidianas, desde teléfonos inteligentes que resuelven cualquier duda en cuestión de segundos a miniordenadores que pueden ser integrados en pacientes como una prótesis, pasando por cohetes espaciales capaces de enviar robots fuera de nuestro planeta y recopilar información constantemente durante años. Muchos de estos componentes tecnológicos son operados por un software encargado de velar por su correcto funcionamiento y por su ejecución óptima. Por tanto, el desarrollo de este software es un pilar muy importante en la evolución de la tecnología y de la humanidad en su conjunto, además de ser un ámbito en auge que, se prevé, seguirá creciendo y necesitando de más expertos en los próximos años. El software se compone de algoritmos. Estos no son más que la sucesión de comandos, programados en un lenguaje entendible de alguna forma por los humanos, que son transformados a un lenguaje que las máquinas pueden procesar y ejecutar con rapidez. El desarrollo del software se hace utilizando lenguajes de programación que se definen con una gramática específica (similar a un lenguaje hablado por los seres humanos) que define los comandos y la lógica que debe aplicar el sistema en cuestión bajo unos parámetros específicos. Existen multitud de lenguajes de programación, que difieren en sus propósitos y características. Encontraremos desde lenguajes de alto nivel (muy parecidos a los lenguajes que utilizamos para comunicarnos entre humanos) hasta lenguajes muy próximos al código máquina, pasando por lenguajes con un propósito puramente educacional o creados por simple diversión para los desarrolladores. En este libro se darán las bases y los conceptos principales de uno de los mejores lenguajes de programación que existe hasta el momento, además de ser uno de los que se encuentra en mayor auge: el lenguaje de programación Python.
1 Introducción 1 INTRODUCCIÓN Corría el año 1989 cuando un joven holandés de 24 años comenzó sus primeras implementaciones del lenguaje de programación que hoy conocemos como Python. Este joven era Guido van Rossum y trabajaba para la empresa Centrum Wiskunde & Informatica (CWI). En su tiempo libre, no paraba de pensar en cómo mejorar la interfaz de usuario que utilizaban para trabajar con el sistema operativo Amoeba. Con esta idea en mente, nació el lenguaje de programación Python, que en principio iba a ser un proyecto pequeño de un lenguaje de programación que sucediera al lenguaje ABC que desarrollaban en CWI y que tuviera manejo de excepciones y ayudara a interactuar mejor con el sistema operativo. El nombre del lenguaje proviene de la afición que tenía Van Rossum a la serie de televisión Monty Python's Flying Circus y no de algo relacionado con el mundo de los reptiles. La primera versión de Python fue lanzada en febrero de 1991 con el número de versión 0.9.0. En esta versión ya tenía componentes como clases con herencia, gestores de excepciones, funciones y tipos de datos como listas y diccionarios o cadenas de caracteres, con lo que desde sus inicios se veía su potencial frente a los demás lenguajes del momento (C++, Common Lisp o Perl). Van Rossum ha sido el principal autor del lenguaje y quien ha dirigido el rumbo del mismo desde su inicio hasta que, en julio de 2018, decidió abandonar el cargo de benevolent dictator for life (BDL, dictador benevolente de por vida) para formar parte de una comisión directiva formada por cinco miembros.
1.1 Evolución de las versiones de Python
1.2 Características principales de los lenguajes de programación
1.2.1 Generaciones y niveles de abstracción de los lenguajes de programación
1.2.2 Paradigmas
1.2.3 Clasificación de lenguajes según su tipado
1.2.4 Características de Python
1.3 Ámbitos de uso de Python
1.3.1 Programación a nivel de sistema operativo
1.3.2 Aplicaciones con interfaz de usuario
1.3.3 Aplicaciones web e interacción con servicios web
1.3.4 Interacción con servicios de Internet
1.3.5 Gestión de contenido
1.3.6 Aplicaciones científicas y manejo de datos
1.3.7 Inteligencia artificial y Python
1.4 Python Enhancement Proposals (PEP)
1.4.1 Proceso de creación de un PEP
1.5 PEP-8: Guía de estilos
1.5.1 Indentación
1.5.2 Longitud de líneas
1.5.3 Espacios, saltos de línea y líneas en blanco
1.5.4 Otros consejos generales
1.5.5 Comentarios y documentación de código
1.5.6 Convención de nombres
1.5.7 Herramientas para cumplir con la PEP-8
1.6 PEP-20: Zen de Python
1.7 Compañías que usan productos creados en Python
1.8 Posición de Python entre los lenguajes de programación
1.9 Python 2 vs Python 3
1.9.1 str, bytes y Unicode
Читать дальше