Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Manipulación de listas en Python, Resúmenes de Diseño

Este documento proporciona una introducción detallada a la manipulación de listas en python. Cubre una amplia gama de operaciones comunes, como acceder a elementos, realizar rebanadas, agregar, modificar y eliminar elementos, invertir el orden de la lista, y más. Además, se explican conceptos importantes como la gestión de memoria y el rendimiento de estas operaciones. El documento incluye ejemplos prácticos que ilustran cada una de las técnicas descritas, lo que lo convierte en una guía valiosa para cualquier estudiante o desarrollador que desee dominar el manejo de listas en python.

Tipo: Resúmenes

2021/2022

Subido el 19/10/2022

plunderer-batleground
plunderer-batleground 🇨🇱

2 documentos

1 / 423

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Aprende Python
Sergio Delgado Quintero
10 de noviembre de 2021
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Vista previa parcial del texto

¡Descarga Manipulación de listas en Python y más Resúmenes en PDF de Diseño solo en Docsity!

Sergio Delgado Quintero

10 de noviembre de 2021

Curso gratuito para aprender el lenguaje de programación Python con un enfoque práctico , incluyendo ejercicios y cobertura para distintos niveles de conocimiento.^1

Consejo: «Programming is not about typing, it’s about thinking.» – Rich Hickey

(^1) En la foto de portada aparecen los Monty Python. Fuente: noticiascyl

Core 1

CAPÍTULO 1

Introducción

Este capítulo es una introducción a la programación para conocer, desde un enfoque sencillo pero aclaratorio, los mecanismos que hay detrás de ello.

1.1 Hablando con la máquina

Los ordenadores son dispositivos complejos pero están diseñados para hacer una cosa bien: ejecutar aquello que se les indica. La cuestión es cómo indicar a un ordenador lo que queremos que ejecute. Esas indicaciones se llaman técnicamente instrucciones y se expresan en un lenguaje. Podríamos decir que programar consiste en escribir instrucciones para que sean ejecutadas por un ordenador. El lenguaje que utilizamos para ello se denomina lenguaje de programación.^1

1.1.1 Código máquina

Pero aún seguimos con el problema de cómo hacer que un ordenador (o máquina) entienda el lenguaje de programación. A priori podríamos decir que un ordenador sólo entiende un lenguaje muy «simple» denominado código máquina. En este lenguaje se utilizan únicamente los símbolos 0 y 1 en representación de los niveles de tensión alto y bajo, que al fin y al cabo, son los estados que puede manejar un circuito digital. Hablamos de sistema binario. Si tuviéramos que escribir programas de ordenador en este formato sería una tarea ardua, pero afortunadamente se han ido creando con el tiempo lenguajes de programación intermedios que, posteriormente, son convertidos a código máquina.

Si intentamos visualizar un programa en código máquina, únicamente obtendríamos una secuencia de ceros y unos:

00001000 00000010 01111011 10101100 10010111 11011001 01000000 01100010 00110100 00010111 01101111 10111001 01010110 00110001 00101010 00011111 10000011 11001101 11110101 01001110 01010010 10100001 01101010 00001111 11101010 00100111 11000100 01110101 11011011 00010110 10011111 01010110

1.1.2 Ensamblador

El primer lenguaje de programación que encontramos en esta «escalada» es ensamblador. Veamos un ejemplo de código en ensamblador del típico programa que se escribe por primera vez, el «Hello, World» :

SYS_SALIDA equ 1

section .data msg db "Hello, World",0x0a len equ $ - msg ;longitud de msg

section .text global _start ;para el linker _start: ;marca la entrada mov eax, 4 ;llamada al sistema (sys_write) (continué en la próxima página) (^1) Foto original por Garett Mizunaka en Unsplash.

4 Capítulo 1. Introducción

1.1.5 Compiladores

Los compiladores son programas que convierten un lenguaje «cualquiera» en código máquina. Se pueden ver como traductores, permitiendo a la máquina interpretar lo que queremos hacer.

Figura 1: Esquema de funcionamiento de un compilador^2

Nota: Para ser más exactos, en Python hablamos de un intérprete en vez de un compilador, pero a los efectos es prácticamente lo mismo. La diferencia está en que el intérprete realiza la «compilación» ( interpretación ) y la «ejecución» de una vez, mientras que el compilador genera un formato «ejecutable» ( código objeto ) que se ejecuta en otra fase posterior.

(^2) Iconos originales por Flaticon.

6 Capítulo 1. Introducción

1.2 Algo de historia

La historia de la programación está relacionada directamente con la aparición de los computadores, que ya desde el siglo XV tuvo sus inicios con la construcción de una máquina que realizaba operaciones básicas y raíces cuadradas (Gottfried Wilheml von Leibniz); aunque en realidad la primera gran influencia hacia la creación de los computadores fue la máquina diferencial para el cálculo de polinomios, proyecto no concluido de Charles Babbage (1793-1871) con el apoyo de Lady Ada Countess of Lovelace (1815-1852), primera persona que incursionó en la programación y de quien proviene el nombre del lenguaje de programación ADA creado por el DoD (Departamento de defensa de Estados Unidos) en la década de

1970.^1

1.2.1 Hitos de la computación

La siguiente tabla es un resumen de los principales hitos en la historia de la computación:

Tabla 1: Hitos en la computación Personaje Aporte Año Gottfried Leibniz Máquinas de operaciones básicas XV Charles Babbage Máquina diferencial para el cálculo de polinomios XVII continué en la próxima página

(^1) Foto original por Dario Veronesi en Unsplash.

1.2. Algo de historia 7

  • 1 Introducción
    • 1.1 Hablando con la máquina
    • 1.2 Algo de historia
    • 1.3 Python
  • 2 Entornos de desarrollo
    • 2.1 Thonny
    • 2.2 Contexto real
  • 3 Tipos de datos
    • 3.1 Datos
    • 3.2 Números
    • 3.3 Cadenas de texto
  • 4 Control de flujo
    • 4.1 Condicionales
    • 4.2 Bucles
  • 5 Estructuras de datos
    • 5.1 Listas
    • 5.2 Tuplas
    • 5.3 Diccionarios
    • 5.4 Conjuntos
    • 5.5 Ficheros
  • 6 Modularidad
    • 6.1 Funciones
    • 6.2 Objetos y Clases
    • 6.3 Excepciones
    • 6.4 Módulos
  • 7 Procesamiento de texto
    • 7.1 string
  • 8 Ciencia de datos
    • 8.1 jupyter
    • 8.2 numpy
    • 8.3 pandas
    • 8.4 matplotlib
    • Figura 2: Ada Lovelace: primera programadora de la historia
  • 1.2. Algo de historia

1.2.2 De los computadores a la programación

De acuerdo a este breve viaje por la historia, la programación está vinculada a la aparición de los computadores, y los lenguajes tuvieron también su evolución. Inicialmente, como ya hemos visto, se programaba en código binario , es decir en cadenas de 0s y 1s, que es el lenguaje que entiende directamente el computador, tarea extremadamente difícil; luego se creó el lenguaje ensamblador , que aunque era lo mismo que programar en binario, al estar en letras era más fácil de recordar. Posteriormente aparecieron lenguajes de alto nivel , que en general, utilizan palabras en inglés, para dar las órdenes a seguir, para lo cual utilizan un proceso intermedio entre el lenguaje máquina y el nuevo código llamado código fuente, este proceso puede ser un compilador o un intérprete.

Un compilador lee todas las instrucciones y genera un resultado; un intérprete ejecuta y genera resultados línea a línea. En cualquier caso han aparecido nuevos lenguajes de programación, unos denominados estructurados y en la actualidad en cambio los lenguajes orientados a objetos y los lenguajes orientados a eventos.^3

1.2.3 Cronología de lenguajes de programación

Desde la década de 1950 se han sucedido multitud de lenguajes de programación que cada vez incorporan más funcionalidades destinadas a cubrir las necesidades del desarrollo de aplicaciones. A continuación se muestra una tabla con la historia de los lenguajes de programación más destacados:

El número actual de lenguajes de programación depende de lo que se considere un lenguaje de programación y a quién se pregunte. Según TIOBE más de 250; según Wikipedia más de 700, según Language List más de 2500; y para una cifra muy alta podemos considerar a Online Historical Encyclopaedia of Programming Languages que se acerca a los 9000.

1.2.4 Creadores de lenguajes de programación

El avance de la computación está íntimamente relacionado con el desarrollo de los lenguajes de programación. Sus creadores y creadoras juegan un rol fundamental en la historia tecnológica. Veamos algunas de estas personas:^4

Tabla 2: Creadores de lenguajes de programación Personaje Aporte Alan Cooper Desarrollador de Visual Basic Alan Kay Pionero en programación orientada a objetos. Creador de Smalltalk continué en la próxima página (^3) Fuente: Universidad Técnica del Norte. (^4) Fuente: Wikipedia.

10 Capítulo 1. Introducción

Figura 3: Cronología de los lenguajes de programación más destacados

12 Capítulo 1. Introducción

1.3 Python

Python es un lenguaje de programación de alto nivel creado a finales de los 80/principios de los 90 por Guido van Rossum, holandés que trabajaba por aquella época en el Centro para las Matemáticas y la Informática de los Países Bajos. Sus instrucciones están muy cercanas al lenguaje natural en inglés y se hace hincapié en la legibilidad del código. Toma su nombre de los Monty Python, grupo humorista de los 60 que gustaban mucho a Guido. Python fue creado como sucesor del lenguaje ABC.^1

1.3.1 Características del lenguaje

A partir de su definición de la Wikipedia:

  • Python es un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis que favorezca un código legible.
  • Se trata de un lenguaje de programación multiparadigma , ya que soporta orientación a objetos, programación imperativa y, en menor medida, programación funcional. Usa tipado dinámico y es multiplataforma.
  • Añadiría, como característica destacada, que se trata de un lenguaje de propósito general. (^1) Foto original por Markéta Marcellová en Unsplash.

1.3. Python 13

1.3.2 Uso de Python

Al ser un lenguaje de propósito general, podemos encontrar aplicaciones prácticamente en todos los campos científico-tecnológicos:

  • Análisis de datos.
  • Aplicaciones de escritorio.
  • Bases de datos relacionales / NoSQL
  • Buenas prácticas de programación / Patrones de diseño.
  • Concurrencia.
  • Criptomonedas / Blockchain.
  • Desarrollo de aplicaciones multimedia.
  • Desarrollo de juegos.
  • Desarrollo en dispositivos embebidos.
  • Desarrollo móvil.
  • Desarrollo web.
  • DevOps / Administración de sistemas / Scripts de automatización.
  • Gráficos por ordenador.
  • Inteligencia artificial.
  • Internet de las cosas.
  • Machine Learning.
  • Programación de parsers / scrapers / crawlers.
  • Programación de redes.
  • Propósitos educativos.
  • Prototipado de software.
  • Seguridad.
  • Tests automatizados.

De igual modo son muchas las empresas, instituciones y organismos que utilizan Python en su día a día para mejorar sus sistemas de información. Veamos algunas de las más relevantes:

Existen ránkings y estudios de mercado que sitúan a Python como uno de los lenguajes más usados y la vez, más amados dentro del mundo del desarrollo de software. En el momento de la escritura de este documento, la última actualización del Índice TIOBE es de agosto de 2020 en la que Python ocupa el tercer lugar de los lenguajes de programación

1.3. Python 15

Figura 4: Grandes empresas y organismos que usan Python

más usados , sólo por detrás de C y Java. Igualmente en la encuesta a desarrolladores de Stack Overflow hecha en 2020, Python ocupa el cuarto puesto de los lenguajes de programación más usados , sólo por detrás de Javascript , HTML/CSS y SQL.

1.3.3 Python2 vs Python

En el momento de la escritura de este material, se muestra a continuación la evolución de las versiones mayores de Python a lo largo de la historia:^3

Versión Fecha de lanzamiento Python 1.0 Enero 1994 Python 1.5 Diciembre 1997 Python 1.6 Septiembre 2000 Python 2.0 Octubre 2000 Python 2.1 Abril 2001 Python 2.2 Diciembre 2001 Python 2.3 Julio 2003 Python 2.4 Noviembre 2004 Python 2.5 Septiembre 2006 Python 2.6 Octubre 2008 Python 2.7 Julio 2010 Python 3.0 Diciembre 2008 continué en la próxima página

(^3) Fuente: python.org.

16 Capítulo 1. Introducción