Iniciando a Programar con Python.

Guía básica de programación

"Iniciando a Programar con Python: Guía básica de programación" ofrece una introducción completa al lenguaje de programación Python. Comienza con una visión histórica y las ventajas de Python, para luego sumergirse en el proceso de instalación, que incluye Jupyter y Visual Studio Code. Cubre conceptos fundamentales de programación como identificadores, palabras clave, bloques de código, entrada/salida y comentarios. La sección sobre variables, constantes y tipos de datos explora números enteros, de punto flotante, booleanos, variables de texto, listas, conjuntos, tuplas y diccionarios. Presenta operadores, desde básicos hasta bit a bit.Luego se abordan las estructuras de control, funciones y módulos, con la exploración de temas como manejo de excepciones y bucles. También se discuten conceptos avanzados, como la programación orientada a objetos, matrices y variables globales/locales. El libro concluye con una exploración extensa de estructuras de datos, la cual cubre listas, conjuntos, tuplas y diccionarios en términos de características, operaciones y métodos. La última sección aborda la entrada/salida con archivos y abarca archivos de texto y binarios, manejo de archivos CSV y serialización de datos. Esta guía proporciona una base sólida para principiantes en Python. Va desde conceptos básicos hasta temas avanzados de programación y estructuras de datos.
  1. Javier Humberto Cuervo Álvarez
    • Javier Humberto Cuervo Álvarez

    • Ingeniero sanitario, especialista y magíster en Ingeniería de Sistemas de la Universidad Nacional de Colombia. Posee cursos de profundización en programación Java, análisis y diseño orientado a objetos con UML, desarrollo de componentes web con tecnologías Java, entre otros.

      Es profesor universitario de la Facultad de Ingeniería de la Universidad Pedagógica y Tecnológica de Colombia con más de 33 años de experiencia. Ha impartido diversos cursos en diferentes programas académicos, como Programación I, II, III, Electiva V (Computación Gráfica, Aplicaciones Web) y Simulación por Computador (aplicando Inteligencia Artificial) en el programa de Ingeniería de Sistemas; Geomática, Ordenamiento Territorial y Electiva V (Modelamiento y Simulación Ambiental) en el programa de Ingeniería Ambiental; Sistemas de Información Geográficos, Matemáticas Avanzadas y Simulación en la Maestría de Ingeniería Ambiental; Matemáticas Avanzadas y Simulación en la Maestría de Metalurgia y Ciencias de los Materiales; Modelamiento y Simulación en la Especialización en Ingeniería Ambiental.

      javier.cuervo@uptc.edu.co

  2. Lina María Cuervo Díaz
    • Lina María Cuervo Díaz

    • Ingeniera de sistemas y especialista en Bases de Datos de la Universidad Pedagógica y Tecnológica de Colombia. Obtuvo The Degree of Master of Science. Departament of Big Data. Tiene experiencia en el campo de análisis de datos e inteligencia de negocios. Maneja herramientas como Qlik Sense, de Power BI, Python con enfoque en Deep Learning y Big Data.

      Entre los logros destacados se encuentran el desarrollo del sistema de segmentación de clientes Sarlaft para la Superintendencia Financiera de Colombia. Optimizó el Risk Exposure Data Store (REDS) de Zurich Seguros Colombia. Desarrolló Ereinsurance, un sistema central de gestión de información para el reaseguro facultativo en Zurich Seguros Colombia. También optimizó la generación de informes de gestión y el sistema de análisis de reclamaciones (CAPS).

      Actualmente estudia una maestría en Big Data en Chungbuk National University, en Corea del Sur. Está trabajando en una investigación titulada The Effect of Genshin Impact's Gacha System on Player Behavior and Social Interaction.

      l.cuervod@chungbuk.ac.kr

  3. Nathalia Andrea Cuervo Díaz
    • Nathalia Andrea Cuervo Díaz

    • Ingeniera de sistemas y magíster en Gestión de Tecnología de Información de la Universidad Nacional Abierta y a Distancia. Inicialmente ejerció como docente en la Universidad Pedagógica y Tecnológica de Colombia, en el programa de Ingeniería Ambiental, donde orientó la asignatura de Geomática. También fue docente en el programa de Ingeniería Electrónica e Ingeniería de Sistemas, donde dictó los cursos de Programación I, Teoría General de Sistemas, Metodología de la Investigación y Diseño Experimental.

      En la actualidad trabaja en la UNAD como coordinadora del curso de Pensamiento de Sistemas. Es miembro activo del grupo de investigación Byte in Design de la UNAD. Ha participado en proyectos relacionados con el diseño y el desarrollo de soluciones tecnológicas innovadoras.

      Cuenta con experiencia en el campo de gestión de tecnología de información. Tiene un enfoque en el desarrollo de software con dominio en lenguajes de programación como Java y Python aplicados al desarrollo web.

      Eathalia.cuervo@unad.edu.co

Prefacio..................................................17

Capítulo 1. Introducción | 21

    Reseña histórica de Python..................................................23

    Ventajas de trabajar con Python..................................................25

    Acerca del libro..................................................27

    Convenciones del libro..................................................27

Capítulo 2. Instalación de Python | 29

    Ejecución de Python..................................................33

    Jupyter..................................................35

    Instalar Jupyter Notebook en Anacond..................................................36

        Instalación..................................................36

        Guía básica de Jupyter con Anaconda..................................................38

        Menú File (archivo)..................................................40

        Menú Edit (editar)..................................................41

        Menú View (ver)..................................................42

        Menú Insert (insertar)..................................................42

        Menú Cell (celda)..................................................43

        Menú Kernel..................................................44

        Menú Help (ayuda)..................................................44

        Barra de herramientas..................................................45

        Crear y guardar archivos..................................................45

    Visual Studio Code..................................................49

    Instalación de Visual Studio Code..................................................50

    Instalación de Jupyter en Visual Studio Code..................................................52

    Entorno de Visual Studio Code..................................................55

    Interface de usuario..................................................56

    Diseño básico..................................................57

    Barra de menú..................................................58

     básica de Jupyter con Visual Studio Code..................................................70

Capítulo 3. Conceptos básicos | 83

    Identificadores..................................................85

    Palabras clave reservadas..................................................87

    Bloques de código..................................................88

    Indentación..................................................88

    Suites..................................................89

    Entrada y salida de datos..................................................91

    Comentarios..................................................91

        Comentario de una sola línea..................................................92

        Comentarios de varias líneas..................................................93

    Sentencias multilínea..................................................94

    Múltiples declaraciones en una sola línea..................................................95

Capítulo 4. Variables y constantes | 97

    Tipos de datos..................................................100

    Sintaxis para definir variables..................................................101

    Variables enteras..................................................102

    Variables reales o de punto flotante..................................................104

    Variables booleanas..................................................105

    Variables de texto..................................................105

    Listas..................................................106

    Conjuntos..................................................106

    Tuplas..................................................106

    Diccionarios..................................................107

    If en línea..................................................108

    Constantes..................................................108

    Conversión de tipos de datos..................................................109

Capítulo 5. Operadores | 111

    Operadores básicos..................................................113

    Operadores de asignación..................................................113

    Operadores aritméticos..................................................115

    Operadores de comparación o relacionales..................................................117

    Operadores lógicos..................................................119

    Operadores de membresía..................................................121

    Operadores de identidad..................................................122

    Operadores bit a bit..................................................123

    Operadores de secuencia..................................................125

    Expresiones compuestas y precedencia de operadores..................................................125

Capítulo 6. Estructuras de control | 127

    Selección “if”..................................................129

    Selección “if-else”..................................................130

    Selección anidada “if-elif-else”..................................................132

    Selección anidada “if-esle”..................................................134

    Estructuras de Iteración..................................................136

        Estructura “for”..................................................136

        Bucles “for” anidados..................................................139

        Instrucción “break”..................................................141

        Instrucción “continue”..................................................142

        Estructura “while”..................................................143

        Bucles “while” anidados..................................................146

Excepciones..................................................147

    Bloques “try-except”..................................................148

Capítulo 7. Funciones y módulos | 151

    Definición de funciones..................................................153

    Invocar funciones..................................................154

    Módulos..................................................155

        Importar todo el módulo..................................................155

        Importar una función específica del módulo..................................................155

        Importar todo el módulo con un alias..................................................156

        Ejemplo de importación de módulos..................................................156

    Funciones con parámetros..................................................159

        Función para comprobar si un número es primo..................................................160

    Invocar funciones..................................................161

    Variables globales y locales..................................................164

    Valores de retorno..................................................165

    Ejemplo de aplicación..................................................166

        Arreglos..................................................166

        Funciones para el manejo de matrices..................................................167

        Función para visualizar una matriz..................................................168

        Suma de matrices..................................................169

        Resta de matrices..................................................171

        Multiplicación de matrices..................................................172

        Matriz transpuesta..................................................175

        Matriz inversa..................................................178

        Solución de sistema de ecuaciones..................................................181

Capítulo 8. Programación orientada a objetos | 187

    Objetos, clases e instancias..................................................190

    Clases..................................................192

    Instancias..................................................196

    Atributo de instancia dinámico..................................................198

    Herencia..................................................199

    Herencia múltiple..................................................206

    Herencia de clases integradas..................................................210

    Polimorfismo..................................................212

    Clases abstractas..................................................214

    Sobrecarga de operadores ..................................................217

    Ejemplo de aplicación..................................................220

Capítulo 9. Estructuras de datos | 231

    Listas..................................................233

        Características..................................................234

        Operaciones y métodos..................................................234

        Crear listas y agregar elementos ..................................................237

        Ordenación de listas................................................238

        Insertar elementos..................................................240

        Eliminar y retornar elementos de una lista..................................................241

        Eliminar elementos de la lista..................................................243

        Número de elementos de una lista..................................................244

        Tipos de elementos en una lista..................................................245

        Agregar los elementos de otra lista..................................................245

    Conjuntos..................................................246

        Características..................................................247

        Operaciones y métodos..................................................247

        Definición..................................................249

        Unión de conjuntos..................................................250

        Intersección..................................................251

        Diferencia de conjuntos..................................................253

        Diferencia simétrica de conjuntos..................................................254

        Operaciones básicas..................................................255

    Tuplas..................................................257

        Características..................................................257

        Operaciones y métodos..................................................257

        Definición de una tupla..................................................259

    Diccionarios..................................................261

        Características..................................................261

        Operaciones y métodos..................................................261

        Casos de uso de diccionarios..................................................263

        Definición de diccionarios..................................................264

        Acceder a elementos..................................................267

        Agregar un nuevo elemento..................................................268

        Eliminar elementos..................................................269

        Mostrar datos del diccionario completo..................................................270

        Operaciones básicas..................................................271

Capítulo 10. Entrada y salida con archivos | 275

    Archivos tipo texto..................................................278

        Abrir y cerrar archivos..................................................279

        Cierre de archivos..................................................281

        Lectura de archivos..................................................281

        Escritura en archivos..................................................284

        Lectura y escritura en archivos..................................................285

    Interacción con directorios y archivos..................................................287

    Archivos CSV..................................................288

        Lectura de archivos CSV..................................................289

        Escritura en archivos CSV..................................................292

        Lectura y escritura en archivos CSV..................................................295

        Lectura de datos de archivos CSV en diccionarios..................................................297

        Escritura de datos de diccionarios en archivos CSV..................................................301

        Actualización de datos de diccionarios en archivos CSV..................................................306

    Archivos binarios..................................................312

        Serialización de datos..................................................312

        Escritura datos serializados..................................................313

        Lectura datos serializados..................................................316

        Actualización de registros..................................................319

        Datos no serializados..................................................321

        Escritura datos no serializados..................................................323

        Lectura de datos no serializados..................................................324

        Buscar registros..................................................327

        Modificar registros..................................................330

Índice..................................................333

Bibliografía..................................................343

  • COM051360 ORDENADORES > Lenguajes de programación > Pitón
  • UM
  • 005 Generalidades > Generalidades y ciencias de la computación > Programación de computadoras, programas, datos