CAPÍTULO 1. INTRODUCCIÓN. 1.1 SISTEMAS DE NUMERACIÓN USADOS EN INFORMÁTICA 1.2 LENGUAJES DE PROGRAMACIÓN. 1.2.1 Lenguaje máquina y lenguaje ensamblador. 1.2.2 Lenguajes compilados y Lenguajes interpretados. 1.3 GENERALIDADES SOBRE PYTHON. 1.4 INSTALAR PYTHON EN NUESTRO ORDENADOR. PRIMEROS PASOS. 1.5 CREAR FICHEROS DE CÓDIGO PYTHON. 1.6 ESTILO DE PROGRAMACIÓN EN PYTHON. INSERTAR COMENTARIOS. 1.7 ERRORES EN PYTHON. TIPOS DE ERRORES. 1.8 EL INTÉRPRETE DE PYTHON COMO UNA POTENTE CALCULADORA CAPÍTULO 2. EMPEZANDO A PROGRAMAR. 2.1 INTRODUCCIÓN. GENERALIDADES. 2.2 ELEMENTOS DE ENTRADA/SALIDA, VARIABLES E IDENTIFICADORES 2.3 OPERADORES, OPERANDOS Y EXPRESIONES. NÚMEROS DE PUNTO FLOTANTE. CONSTANTES. 2.4 ALGUNAS FUNCIONES INTERESANTES DEL INTÉRPRETE PYTHON. 2.4.1 Las funciones int() y eval 2.4.2 La función roun 2.4.3 La función abs 8 PYTHON 3. CURSO PRÁCTICO 2.4.4 La función max 2.4.5 La función min 2.4.6 La función pow 2.4.7 La función format aplicada a números 2.5 TRABAJANDO CON CARACTERES Y CADENAS. 2.5.1 La función print 2.5.2 La función str 2.5.3 La función format() aplicada a cadenas. 2.5.4 La función ord 2.5.5 La función chr 2.5.6 Operadores usados con cadena 2.6 INSTALAR Y EMPEZAR A TRABAJAR CON EL IDE PYSCRIPTER CAPÍTULO 3. ELEMENTOS FUNDAMENTALES DE PROGRAMACIÓN: INSTRUCCIÓN CONDICIONAL Y BUCLES. 3.1 CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS 3.2 OPERADORES RELACIONALES Y TIPO BOOLEANO. FUNCIONES INT() Y BOOL 3.3 OPERADORES LÓGICOS 3.4 LA INSTRUCCIÓN CONDICIONAL IF 3.4.1 if simple 3.4.2 Varios if simple anidadoselse 3.4.4 Varios if-else anidados 3.4.5 if-elif-else 3.4.6 Consideraciones finales sobre la instrucción if. Expresiones condicionales 3.5 INSTRUCCIONES PARA REALIZAR BUCLES 3.5.1 Instrucción for 3.5.2 Instrucción while 3.5.3 Uso del debugger de PyScripter. 3.5.4 Las palabras reservadas break y continue 3.5.5 Bucles anidados 3.6 IMPORTAR MÓDULOS. USO DE IMPORT 3.7 GENERACIÓN DE NÚMEROS ALEATORIOS EN PYTHON. 3.8 REDIRECCIONES DE E/S. CAPÍTULO 4. PROGRAMACIÓN FUNCIONAL 4.1 CONCEPTO DE FUNCIÓN. DEFINICIÓN Y EJECUCIÓN DE UNA FUNCIÓN EN PYTHON. 4.2 ORGANIZACIÓN DE LAS FUNCIONES EN UN PROGRAMA. FUNCIÓN PRINCIPAL O MAIN 4.3 FLUJO DE EJECUCIÓN DE UN PROGRAMA. VARIABLES LOCALES Y GLOBALES 4.4 MÁS SOBRE VARIABLES LOCALES Y GLOBALES. LA DECLARACIÓN GLOBAL. 4.5 PARÁMETROS DE ENTRADA Y VALOR DE SALIDA DE UNA FUNCIÓN. 4.6 PILA DE LLAMADAS A FUNCIONES. 4.7 TIPOS DE ARGUMENTOS EN LLAMADAS A FUNCIONES: POSICIONALES Y NOMBRADOS. 4.8 DEVOLUCIÓN DE MÚLTIPLES DATOS Y ARGUMENTOS POR DEFECTO EN UNA FUNCIÓN. 4.9 PASO DE ARGUMENTOS MÚLTIPLES A UNA FUNCIÓN. USO DE *ARGS Y **KWARGS. 4.10 CONCEPTOS DE LA PROGRAMACIÓN FUNCIONAL. ABSTRACCIÓN Y ENCAPSULACIÓN. 4.11 FUNCIONES RECURSIVAS. CAPÍTULO 5. PROGRAMACIÓN ORIENTADA A OBJETOS. 5.1 CONCEPTOS DE LA PROGRAMACIÓN ORIENTADA A OBJETOS. ABSTRACCIÓN Y ENCAPSULACIÓN. CAMPOS Y MÉTODOS DE UNA CLASE. 5.2 DEFINICIÓN Y USO DE UNA CLASE. CREACIÓN DE OBJETOS. 5.3 DEFINICIÓN Y USO DE LOS MÉTODOS DE UNA CLASE. 5.4 CAMPOS PRIVADOS. MÉTODOS GET() Y SET(). 5.5 REPRESENTACIÓN GRÁFICA ESTANDARIZADA DE CLASES Y OBJETOS. LENGUAJE UML 5.6 OBJETOS MUTABLES E INMUTABLES AL SER PASADOS A FUNCIONES. 5.7 HERENCIA 5.8 HERENCIA MÚLTIPLE. 5.9 SOBRECARGA DE MÉTODOS. 5.10 JERARQUÍA DE CLASES. LA CLASE OBJECT 5.11 POLIMORFISMO. BÚSQUEDA DINÁMICA DE MÉTODOS 5.12 FUNCIONES ISINSTANCE() E ISSUBCLASS(). IMPORTAR MEDIANTE FROM-IMPORT. VARIABLE PYTHONPATH. CAPÍTULO 6. TIPOS DE DATOS EN PYTHON. 6.1 CADENAS. 6.1.1 Definición y creación de cadenas. Operador índice 6.1.2 Operadores sobre cadenas. 6.1.3 Funciones aplicadas a cadenas. 10 PYTHON 3. CURSO PRÁCTICO 6.1.4 Métodos de la clase str. 6.1.5 Ejemplos de uso práctico de adenas. 6.2.1 Definición y creación de listas. Comprensiones de listas y operador índice 6.2.2 Operadores sobre listas. 6.2.3 Funciones y listas. 6.2.4 Métodos de la clase list. 6.2.5 Ejemplo de uso práctico de listas. 6.2.6 Listas multidimensionales. 6.3 TUPLAS. 6.3.1 Definición y creación de tuplas. Operador índice. Tuplas inmutables. 6.3.2 Operadores sobre tuplas ( :, +,*, in , not in =, ==, != ) 6.3.3 Funciones aplicadas a tuplas (len(), max(), min() y sum()) 6.3.4 Métodos de la clase tuple. 6.3.5 Ejemplos de uso práctico de tuplas. 6.4 CONJUNTOS. 6.4.1 Definición y creación de conjuntos. 6.4.2 Operadores sobre conjuntos ( , & , - , ^ , in, not in, < , , >= , == , != ). 6.4.3 Funciones aplicadas a conjuntos ( len(), max(), min() y sum() ). 6.4.4 Métodos de la clase set. 6.4.5 Ejemplos de uso práctico de conjuntos. Uso de for para recorrer elementos. 6.5 DICCIONARIOS. 6.5.1 Definición y creación de diccionarios. 6.5.2 Acceder a, añadir, actualizar y borrar elementos en diccionarios. 6.5.3 Operadores sobre diccionarios ( in/not in, ==, !=). 6.5.4 Funciones aplicadas a diccionarios ( len(), max(), min() y sum() ). 6.5.5 Método de la clase dict. 6.5.6 Ejemplos de uso práctico de diccionarios. 6.6 RESUMEN DE TIPOS DE DATOS Y COMPARACIÓN DE VELOCIDADES CAPÍTULO 7. FICHEROS Y EXCEPCIONES. 7.1 FICHEROS. GENERALIDADES Y TIPOS. 7.1.1 Ficheros de texto. 7.1.2 Ficheros binarios 7.1.3 Evaluar la existencia de un fichero, recorrerlo y procesarlo 7.1.4 Almacenando tipos complejos de datos (I). Módulo pickle. 7.1.5 Almacenando tipos complejos de datos (II). Módulo shelve. 7.2 EXCEPCIONES Y SU MANEJO. 7.2.1 Definición y tipos de excepciones. 7.2.2 Manejo de excepciones. Estructura try-except-else-finally. 7.2.3 La instrucción with. CAPÍTULO 8. PROGRAMACIÓN GRÁFICA EN PYTHON MEDIANTE PYQT. 8.1 ENTORNOS GRÁFICOS. LIBRERÍA QT. 8.2 PYQT. QUÉ ES Y PARA QUÉ SIRVE. 8.2.1 Instalación de PyQt en nuestro ordenador 8.2.2 Uso de PyQt directamente desde código Python. 8.2.3 Uso de Qt Designer para diseñar interfaz gráfico. Elementos que lo componen (Widgets, MainWindow, Dialog). 8.3 WIDGETS FUNDAMENTALES DE QT DESIGNER. 8.3.1 Esquemas (Layouts). 8.3.2 Botones (Buttons). 8.3.3 Elementos de visualización (Display Widgets). 8.3.4 Elementos de entrada (Input Widgets).. 8.4 PROGRAMANDO APLICACIONES. CONECTANDO EVENTOS CON ACCIONES (SIGNAL/SLOT). 8.5 EVENTOS EN WIDGETS FUNDAMENTALES. 8.5.1 Push Button (QPushButton). 8.5.2 Radio Button (QRadioButton). 8.5.3 Check Box (QCheckBox) 8.5.4 Button Box (QDialogButtonBox). 8.5.5 Calendar (QCalendarWidget). 8.5.6 LCD numbers (QLCDNumber). 8.5.7 Progress Bar (QProgressBar). 8.5.8 Combo Box (QComboBox). 8.5.9 Font Combo Box (QFontComboBox). 8.5.10 Line Edit (QLineEdit). 8.5.11 Spin Box (QSpinBox). 8.5.12 Date/Time edit (QDateTimeEdit). 8.5.13 Dial (QDial) y Vertical and Horizontal Sliders (QSlider). 8.6 EJEMPLOS DE APLICACIONES GRÁFICAS SENCILLAS CON QT DESIGNER. 8.6.1 Operaciones con dos números reales. 8.6.2 Pequeño pedido en frutería. 8.6.3 Gráficos de factura, gas y volumen de audio. 8.6.4 Reserva de hotel. 8.6.5 Inmobiliaria. 8.6.6 Ejemplo de uso de Spin Box. 8.7 APLICACIONES Y WIDGETS AVANZADOS EN QT DESIGNER. EJEMPLOS. CAPÍTULO 9. GENERACIÓN DE GRÁFICOS EN PYTHON MEDIANTE MATPLOTLIB. 9.1 GENERACIÓN DE GRÁFICOS EN PYTHON. MATPLOTLIB. 9.2 INSTALACIÓN DE MATPLOTLIB. CREACIÓN DE UN ENTORNO VIRTUAL CON ANACONDA. 9.3 USO DE MATPLOTLIB. 9.3.1 Uso de Matplotlib directamente: Módulo pyplot. 9.3.2 Uso de Matplotlib mediante los objetos de su librería. 9.4 INSERCIÓN DE MATPLOTLIB EN UNA APLICACIÓN PYQT. EJEMPLOS PRÁCTICOS. 9.5 USO INTERACTIVO DE MATPLOTLIB EN UNA APLICACIÓN PYQT. EJEMPLO. BIBLIOGRAFÍA. MATERIAL ADICIONAL
El objetivo de este libro es que el lector aprenda a desarrollar aplicaciones informáticas sobre un diseño especificado utilizando lenguaje Python, integrando aplicaciones web con CGIs de Python.