




























































































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
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
1 / 423
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!





























































































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
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.
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
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
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
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
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
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
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.
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
A partir de su definición de la Wikipedia:
1.3. Python 13
Al ser un lenguaje de propósito general, podemos encontrar aplicaciones prácticamente en todos los campos científico-tecnológicos:
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.
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