0% encontró este documento útil (0 votos)
58 vistas

Unidad 4 Python

El documento describe diferentes estructuras de datos para organizar información, incluyendo arreglos unidimensionales y multidimensionales, registros y tuplas. Explica cómo declarar y acceder a elementos dentro de cada estructura, así como operaciones comunes como recorrer, sumar y calcular promedios. El objetivo es seleccionar la estructura de datos adecuada para resolver un problema específico.

Cargado por

heidi.medina
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
58 vistas

Unidad 4 Python

El documento describe diferentes estructuras de datos para organizar información, incluyendo arreglos unidimensionales y multidimensionales, registros y tuplas. Explica cómo declarar y acceder a elementos dentro de cada estructura, así como operaciones comunes como recorrer, sumar y calcular promedios. El objetivo es seleccionar la estructura de datos adecuada para resolver un problema específico.

Cargado por

heidi.medina
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 10

Fundamentos de programación

Competencia No. 4. Organización de datos


Descripción: Conoce y aplica las estructuras de datos en un lenguaje de
programación que permitan la organización de datos en la resolución de
problemas reales.

Temario
4.1 Arreglos
4.2 Unidimensionales: conceptos básicos, operaciones y aplicaciones.
4.3 Multidimensionales: conceptos básicos, operaciones y aplicaciones.
4.4 Estructuras o registros.

Presentación

La unidad 4 tiene como objetivo que se comprenda, seleccione e implemente la


estructura de datos adecuada para la resolución de un problema específico.
4.1 Arreglos
Las listas en Python forman parte de lo que se conoce como estructuras de datos
que nos ofrece Python (son un tipo de array). En otros lenguajes de
programación, se los conoce como vectores.
Las listas en Python son utilizadas para almacenar múltiples valores en una única
variable.

La ventaja de los arreglos, vectores o listas en Python es que permite almacenar


valores de diferentes tipos de datos en un mismo arreglo.

1
MCA. Jesús Muñiz Blanco
4.2 Unidimensionales(Listas): conceptos básicos, operaciones y
aplicaciones.
Una lista es una secuencias ordenadas de objetos de distintos tipos.
Se construyen poniendo los elementos entre corchetes [ ] separados por comas.
Para declarar una lista en Python, se deben seguir las mismas normas básicas
que se siguen para declarar una variable cualquiera, con un pequeño cambio en
la sintaxis:
nombre_lista = [ ]
o bien utilizando la función list():
lista2 = list()
Ejemplo:
lista_elementos = [ 1, 2, True, “Hola”, 5.8]
lista2 = list([ “Sara”, 4, True, ‘M’, 6.5])
Para acceder a alguno de los elementos de la lista de la lista se hace a través
del nombre de su posición, en Python la primer posición de una lista es la
posición 0.

lista_elementos 1 2 True “Hola” 5.8


[0] [1] [2] [3] [4]

De tal manera que si colocamos la instrucción:


print(lista_elementos[3])
imprimirá “Hola”

de esa manera podemos acceder a los elementos de un arreglo y de la


siguiente forma:
1. Se puede acceder a una posición usando el nombre de la variable y
corchetes "[]" indicando en su interior el índice que quieres obtener.
2. Las posiciones de las listas arrancan enumeradas desde cero, así la
primera posición se accede como [0] y la última sería el tamaño total
menos 1

2
MCA. Jesús Muñiz Blanco
3. Se pueden usar índices negativos, así accediendo a los elementos de la
lista contando desde atrás. Así un modo sencillo de obtener el último
elemento es con [-1]
4. Si se accede a un índice que no existe, el programa fallará.
Lecturas y recorridos en un arreglo.
Si se desea recorrer para asignar valores a cada elemento de un arreglo por
ejemplo:
Una variable solo permite almacenar un solo valor al mismo tiempo, mientras
que un arreglo permite almacenar varios valores al mismo tiempo, un valor en
cada localidad o casillero.
si tuviéramos que almacenar 5 calificaciones:

Con variables, esta sería la solución: con arreglos, esta sería la solución:
calif1 = 89 calif = [89,76,90,85,95]
calif2 = 76 O bien:
calif3 = 90 calif = [ ]
calif4 = 85 calif[0] = 89
calif5 = 95 calif[1] = 76
calif[2] = 90
calif[3] = 85
calif[4] = 95

Ventajas de usar un arreglo en lugar de una variable


Identifica en el ejemplo anterior que solo debes declarar un solo objeto arreglo y
seleccionar cada una de las posiciones del arreglo y en el caso de las variables
se trata de usar una variable para cada valor, y eso no es todo, el ejemplo solo
fue de 5 valores que hubiera pasado si se tratara de 30 valores.

Lo importante en los arreglos ubicar bien la diferencia entre la posición del


arreglo y el valor en esa posición.
Para eso utilizamos una variable entera que se vaya moviendo en cada una de
las posiciones para ir recuperando el valor:

3
MCA. Jesús Muñiz Blanco
datos = [8, 4, 6, 12, 9, 2, 3, 10]

Siguiendo con el ejemplo del vector datos en el cual sino se le hubiera inicializado
con valores y tuviéramos que leer los datos o bien si deseamos mostrar los
valores en pantalla requerimos de una estructura iterativa que nos permita
recorrer el arreglo y esto es con un ciclo for o while

La sentencia para mostrar los valores sería de la siguiente forma:

for i in range(len(datos)):
print(datos[i])
Este ciclo permite recorrer índice por índice del arreglo para mostrar los valores
en cada posición, la función len() extrae el tamaño o longitud del arreglo.

Si solo quisiéramos imprimir los valores del arreglo sin conocer los índices
podría ser de la forma:
for i in datos:
print(i)
pero con este tipo de recorrido no controlamos los valores de los índices de
cada elemento del arreglo.
Leer datos y asignarlos a un vector o arreglo.
Para agregar elementos a un vector o arreglo, en Python se considera como
una lista, y se utiliza la función append().

4
MCA. Jesús Muñiz Blanco
De tal manera que, si el arreglo se llama datos y vamos a asignarle 6 valores,
las sentencias serían las siguientes:
datos = []

for i in range(0,6,1):
valor= input("Dame un valor a agregar al vector: ")
datos.append(valor)

cabe mencionar que dichas sentencias van agregando los datos al final de la
lista o vector, es decir, se van agregando de manera ordenada.
Si deseáramos insertar en cualquier posición del arreglo o utilizando otra función,
se puede usar la función insert(posición, valor), quedando las sentencias de la
forma:
for i in range(0,6,1):
valor= input("Dame un valor a agregar al vector: ")
datos.insert(i,valor)
a diferencia de append, insert permite establecer la posición en donde se
desea insertar y el valor a insertar.
Ejemplo:
Leer 10 edades, almacenarlas en un arreglo, vector o lista y mostrar como
resultado el promedio de edades.

A diferencia de otros lenguajes, en Python solo necesitamos declarar la


variable indicando que será un arreglo, de la forma:
edades = [ ]
posteriormente se hace la lectura de los valores para el arreglo, con insert o
append, en este caso utilizaremos la función append:
for i in range(0,10,1):
valor= input("Dame la edad a agregar: ")
edades.append(valor)

5
MCA. Jesús Muñiz Blanco
Una vez leídas las edades, haremos un nuevo recorrido para sumar las edades
leídas:
sumaedad = 0
for i in range(0,10,1):
sumaedad= sumaedad + edades[ i ]
Y finalmente se calcula el valor del promedio de edades de la forma:
promedio = sumaedad / 10
print(“El promedio de las edades es: ”)

Aunque Python ya trae funciones definidas que se pueden utilizar con datos
comparables o que se puedan realizar operaciones:
• len(l): Devuelve el número de elementos de la lista l.
• min(l): Devuelve el mínimo elemento de la lista l siempre que los datos sean
comparables.
• max(l): Devuelve el máximo elemento de la lista l siempre que los datos sean
comparables.
• sum(l): Devuelve la suma de los elementos de la lista l, siempre que los datos
se puedan sumar.
• dato in l: Devuelve True si el dato dato pertenece a la lista l y False en caso
contrario.
• l.index(dato): Devuelve la posición que ocupa en la lista l el primer elemento
con valor dato.
• l.count(dato): Devuelve el número de veces que el valor dato está contenido en
la lista l.
• all(l): Devuelve True si todos los elementos de la lista l son True y False en caso
contrario.
• any(l): Devuelve True si algún elemento de la lista l es True y False en caso
contrario.

4.3 Multidimensionales: conceptos básicos, operaciones y aplicaciones.


Los arreglos bidimensionales o multidimensionales, también se consideran o
son nombradas matrices, porque están compuestas por filas y columnas, y en
python puede ser una lista anidada.

6
MCA. Jesús Muñiz Blanco
La declaración e inicialización de este arreglo sería:
edades = [[18,25,22,21],[20,22,19,22], [25,20,18, 24]]
para recorrer un arreglo bidimensional se requieren dos iteraciones, una para
las filas y otra para las columnas de cada fila, de la forma:
edades= [[18, 22, 24, 25],
[25, 18, 19, 23]]

for i in range (len(edades)):


for j in range(len(edades[i])):
print(edades[i][j], end = " ")
print("\n")

Es importante mencionar que los arreglos de tipo lista permiten que sus valores
sean modificables, mientras que en otro tipo de estructura que se verá no se
puede.

4.4 Estructuras o registros.


Tuplas.
Una tupla es una secuencia ordenada de objetos de distintos tipos.
Se construyen poniendo los elementos entre paréntesis ( ) separados por comas.
Se caracterizan por:
• Tienen orden.
• Pueden contener elementos de distintos tipos.

7
MCA. Jesús Muñiz Blanco
• Son inmutables, es decir, no pueden alterarse durante la ejecución de un
programa.
Se usan habitualmente para representar colecciones de datos una determinada
estructura semántica, como por ejemplo un vector o una matriz.

La sintaxis para definir una tupla es:


datos = (“Sara”, 19, 1.65)
o bien:
datos = tuple(“Sara”, 19, 1.65)

Si se realiza una tupla en forma de vector o matriz, queda de la siguiente manera:


b = ((1, 2, 3), (4, 5, 6))

Operaciones con tuplas


El acceso a los elementos de una tupla se realiza del mismo modo que en las
listas. También se pueden obtener subtuplas de la misma manera que las
sublistas.
Las operaciones de listas que no modifican la lista también son aplicables a las
tuplas.
Sentencias Descripción
a = (1, 2, 3) Define una estructura de tipo tupla, con tres
valores en los índices 0, 1 , 2
print(a[1]) Imprime el contenido en la tupla a, índice 1, cuyo
valor es 2
print(len(a)) Imprime la longitud de la tupla a, cuyo valor es 3
print(a.index(3)) Imprime el índice del valor 3 de la tupla a, que es
2
if 0 in a: Pregunta si el valor 0 existe en la tupla a, si existe
print(“El valor está en la lista”) imprime “El valor está en la lista”
else: De lo contrario imprime “El valor no está en la
print(“El valor No está en la lista”
lista”)
b = ((1, 2, 3), (4, 5, 6)) Define la tupla b con los valores en dos filas y tres
columnas.
print(b[1]) Imprime el valor contenido en la fila 1 que son:

8
MCA. Jesús Muñiz Blanco
(4, 5, 6)
print(b[1][2]) Imprime el valor contenido en la fila 1, columna
2, que es: 6

Diccionarios
Un diccionario es una colección de pares formados por una clave y un valor
asociado a la clave.
Se construyen poniendo los pares entre llaves { } separados por comas, y
separando la clave del valor con
dos puntos:.
Se caracterizan por:
• No tienen orden.
• Pueden contener elementos de distintos tipos.
• Son mutables, es decir, pueden alterarse durante la ejecución de un programa.
• Las claves son únicas, es decir, no pueden repetirse en un mismo diccionario,
y pueden ser de cualquier tipo de datos inmutable.

Para definir un diccionario se puede utilizar la siguiente sintaxis:


nombre_diccionario = { clave1: valor1, clave2: valor2,…,claveN:valorN}

por ejemplo:
libro = {‘nombre’:’Ingeniería de Software’, ‘autor’:’Roger Pressman’,
‘editorial’:’Mcgraw Hill’, ‘isbn’:9701054733}

Acceso a los elementos de un diccionario


• d[clave] devuelve el valor del diccionario d asociado a la clave clave. Si en el
diccionario no existe esa clave devuelve un error.
• d.get(clave, valor) devuelve el valor del diccionario d asociado a la clave clave.
Si en el diccionario no existe esa clave devuelve valor, y si no se especifica un
valor por defecto devuelve None.
Sentencia Descripción
a = {'nombre':'Alfredo', 'despacho': 218, Define un diccionario con las claves nombre,
'email':'[email protected]'} despacio y email, así como sus valores
correspondientes.

9
MCA. Jesús Muñiz Blanco
print(a['nombre']) Imprime el valor correspondiente a la clave
nombre del diccionario a.
a['despacho'] = 210 Asigna al valor de la clave despacho el valor
de 210, y sustituye el 218.
print(a) Imprime los elementos del diccionario a,
claves y valores.
print(a.get('email')) Obtiene el valor de la clave ‘email’ del
diccionario a y lo imprime.
a['universidad'] = 'ITSP' Agrega un elemento al final del diccionario
con la clave ‘universidad’ y le asigna ITSP al
valor.

Realiza el programa que permita probar las sentencias antes mencionadas.

Es importante identificar las diferencias entre los tres tipos de estructura de datos
mencionados: listas, tuplas y diccionarios, para poder identificar y aplicar el uso
correspondiente.

10
MCA. Jesús Muñiz Blanco

También podría gustarte