Repaso Python
Repaso Python
INGENIERÍA INFORMÁTICA
ASIGNATURA
PROGRAMACIÓN PARA CIENCIA DE DATOS
R E P A S O P Y T H O N
Python ofrece una amplia variedad de tipos de datos que permiten trabajar de forma flexible y
sencilla. Entre los más comunes se encuentran:
Diccionarios (dict): Pares clave-valor, por ejemplo {"nombre": "Ana", "edad": 25}.
Tuplas (tuple): Colecciones ordenadas pero inmutables, por ejemplo (10, 20, 30).
Conjuntos (set): Colecciones desordenadas de elementos únicos, por ejemplo {1, 2, 3}.
Ejercicio 1: Suma
La suma en Python se realiza con el operador +. Este operador combina dos valores numéricos.
2 + 3 # Suma
➝ El resultado es 5.
[ ] 2 + 3 # Suma
Ejercicio 2: Multiplicación
La multiplicación en Python se realiza con el operador *. Este operador calcula el producto de dos
números.
2 * 3 # Multiplicación
➝ El resultado es 6.
[ ] 2 * 3 # Multiplicación
6
Ejercicio 3: División
La división en Python se realiza con el operador /. Siempre devuelve un número de tipo flotante
(float), incluso si la división es exacta.
➝ El resultado es 3.5.
3.5
La división entera en Python se realiza con el operador //. Devuelve únicamente la parte entera
del cociente, descartando los decimales.
➝ El resultado es 2.
Ejercicio 5: Potenciación
La potenciación en Python se realiza con el operador **. Eleva un número a la potencia indicada.
2 ** 4 # Potenciación
➝ El resultado es 16.
[ ]2**4 # Potenciación
16
Ejercicio 6: Módulo
El operador % devuelve el residuo de una división. Es útil para determinar si un número es divisible
por otro.
8 % 2 # Operación módulo
[ ]8 % 2 # Operación Modulo
Ejercicio 7: Módulo
5 % 2 # Operación módulo
➝ El resultado es 1, porque 5 dividido entre 2 da un residuo de 1.
[ ]5 % 2 #Operación Modulo
Ejercicio 8: Módulo
53 % 15 # Operación módulo
[ ]53 % 15
División entera (//) y módulo (%): Se consideran al mismo nivel que multiplicación y
división.
Esta línea de código combina varias operaciones matemáticas en una sola expresión. Se utilizan
paréntesis para controlar el orden de ejecución, siguiendo la jerarquía de operaciones.
➝ Esta expresión demuestra cómo combinar suma, potencia, multiplicación y división en una sola
fórmula, respetando el orden de operaciones.
75.0
Booleanos Lógicos en Python
Los Booleanos son un tipo de dato fundamental en Python que representa valores de verdad. Solo
pueden tomar dos posibles valores: True (verdadero) o False (falso). Se utilizan ampliamente en
comparaciones, condiciones y control de flujo en los programas.
o == : igual a → 5 == 5 ➝ True
o != : diferente de → 5 != 3 ➝ True
La función int representa números enteros en Python. Son valores sin decimales y se utilizan para
contar o realizar operaciones exactas.
# Función para determinar el tipo de dato numérico int # tipo entero (int)
int
La función float representa números con decimales. Se determina por el uso del punto decimal en
el número.
float
La función bool representa valores lógicos en Python. Solo pueden ser True o False y se utilizan
para condiciones y comparaciones.
bool
bool
La función type() permite determinar el tipo de dato de un valor o expresión. En este caso, 5 /
2 realiza una división que devuelve un número flotante.
➝ El resultado es float.
float
La función type() permite determinar el tipo de dato de un valor o expresión. En este caso, 5 //
2 realiza una división entera que devuelve solo la parte entera del cociente.
➝ El resultado es int.
int
x = 5 # Variable entera
y = 3.14 # Variable flotante
nombre = "Python" # Variable tipo string
🔹 En Python, las variables son dinámicas, lo que significa que pueden cambiar de tipo si se les
asigna un nuevo valor.
x = 5 # Entero
x = "Hola" # Ahora es un string
Aunque Python lo permite, no es recomendable cambiar el tipo de una variable, ya que puede
causar confusión en el código.
Los nombres de variables en Python no pueden comenzar con un número ni contener caracteres
especiales. Se recomienda usar letras, números (no al inicio) y guiones bajos.
int
En Python, las variables son dinámicas. Esto significa que podemos cambiar su valor y tipo en
cualquier momento.
float
Podemos asignar valores a varias variables y realizar operaciones entre ellas. Python permite
almacenar resultados de operaciones directamente en otra variable.
x = 2 # Asignación a la variable x
y = 3 # Asignación a la variable y
z = x + y # Suma de x e y
En Python, un string o cadena de texto es una secuencia de caracteres encerrada entre comillas
simples ('texto') o dobles ("texto"). Los strings se utilizan para almacenar y manipular información
textual, como nombres, mensajes, oraciones o incluso códigos de varias líneas.
Python ofrece varias operaciones para trabajar con strings, incluyendo concatenación, repetición,
indexado, slicing y funciones integradas como len() para obtener la longitud de la cadena.
Este ejemplo muestra cómo crear cadenas de texto en Python. Podemos usar comillas dobles
("texto") o simples ('texto'). Las cadenas se almacenan en variables y se pueden imprimir en
pantalla usando print().
[ ]nombre = "Python"
mensaje = 'Hola mundo'
print(nombre)
print(mensaje)
Ejemplo 2: Concatenación
En este ejemplo se muestra cómo unir varias cadenas en una sola utilizando el operador +. Esto es
útil para crear mensajes completos combinando diferentes palabras o variables.
Ejemplo 3: Repetición
Podemos repetir un string varias veces usando el operador *. Esto genera una nueva cadena que
contiene el texto original repetido el número de veces indicado.
Ejemplo 4: Indexado
Cada carácter en un string tiene una posición (índice) comenzando desde 0. Podemos acceder a
caracteres individuales usando corchetes [] con el índice correspondiente.
[ ]palabra = "Python"
print(palabra[0])
print(palabra[5])
Ejemplo 5: Longitud de un String
Podemos obtener la cantidad de caracteres de un string utilizando la función len(). Esto incluye
todos los caracteres, espacios y signos de puntuación.
[ ]palabra = "Python"
print(len(palabra))
Comillas sencillas
En Python, un string se puede definir utilizando comillas sencillas (' '). Esto permite crear cadenas
de texto simples.
[ ]'Comillas sencillas'
Comillas dobles
Un string también puede definirse usando comillas dobles (" "). Esto es útil cuando se desea incluir
comillas sencillas dentro del texto.
[ ]"Comillas dobles"
Podemos escribir comillas dentro de un string usando el otro tipo de comillas para delimitar el
texto. Por ejemplo, se usan comillas dobles para que el string contenga comillas sencillas sin
problemas.
Para escribir un string largo en varias líneas de código sin romperlo, se puede usar la barra
invertida (\) al final de la línea. Esto permite que el texto se siga en la siguiente línea manteniendo
un único string.
Strings multilínea
Los strings de varias líneas se pueden escribir delimitando el texto con tres comillas dobles ("""
"""). Esto permite incluir saltos de línea dentro del string y se usan frecuentemente para
comentarios largos o documentación.
[ ]"""
Los strings de varias lineas pueden
escribirse delimitando con tres comillas
dobles y son usados corrientemente como
comentarios
"""
Otra forma de escribir strings largos es usando paréntesis para agrupar varias cadenas y Python las
concatenará automáticamente. Esto permite mantener la legibilidad del código sin usar la barra
invertida.
Tipo de dato
Usando la función type() podemos comprobar el tipo de dato de cualquier variable. En este caso,
un string devuelve str, que indica que es una cadena de texto.
str
Duplicar strings
Podemos repetir un string varias veces utilizando el operador *. Esto genera un nuevo string que
contiene el original repetido el número de veces indicado.
Concatenar strings
Podemos unir varias cadenas en una sola usando el operador +. Esto es útil para construir
mensajes o frases combinando distintos textos.
[ ]# Contactar strings
palabra = "Aunque" + " sea un aguita" + " limón please.."
palabra
Imprimir un string
La función print() se utiliza para mostrar el contenido de un string en pantalla. Es la forma más
directa de visualizar texto en Python.
[ ]print("Hola mundo")
Hola mundo
Podemos combinar varias variables que contienen strings y luego repetir el resultado usando *.
Esto permite construir textos más largos o generar patrones de manera sencilla.
Podemos almacenar un string en una variable para usarlo más adelante. Esto permite manipular y
reutilizar el texto sin reescribirlo cada vez.
Imprimir variable
La función print() permite mostrar el contenido de cualquier variable, incluyendo strings. Es útil
para verificar valores o mostrar resultados al usuario.
Hola
Asignación de variables
Podemos almacenar diferentes tipos de datos en variables. Por ejemplo, un número entero
en num y un string en name. Esto permite manipular y usar ambos valores en distintas
operaciones.
Los f-strings permiten insertar variables dentro de un string de forma directa usando llaves {}. Esto
facilita construir mensajes que combinen texto y valores de variables de manera legible.
[ ]# f-string o string literal format
print (f"Me llamo: {name}, y mi edad es: {num}")
La función input() permite al usuario ingresar datos desde el teclado. Todo lo ingresado se
almacena como string, y podemos comprobar su tipo con type().
str
Podemos pedir los datos del usuario una sola vez y luego usar un bucle for para mostrar la
información varias veces. Los f-strings permiten imprimir el índice del bucle junto con los datos
ingresados.
¿Cuál es tu edad? 27
Las listas son una de las principales estructuras para almacenar información en Python. Permiten
guardar varios elementos en una sola variable, incluyendo números, strings, booleanos o incluso
otras listas. Las listas se definen usando corchetes [] y los elementos se separan por comas.
Son mutables, lo que significa que podemos cambiar, agregar o eliminar elementos después de
haberlas creado.
Podemos acceder a los elementos usando índices (empezando en 0), recorrerlas con bucles, o
aplicar métodos integrados como append(), remove() o sort() para manipularlas.
Creamos listas usando corchetes [] y separando los elementos con comas. Las listas pueden
contener distintos tipos de datos, incluyendo números, cadenas y booleanos.
[ ]# definicion de listas
numeros = [1, 2, 3, 4, 5]
nombres = ["Ana", "Luis", "Carlos"]
mixta = [1, "Hola", True, 3.14]
# las listas de delimitan entre [y] y se usa la , como separación
Acceder a elementos
Podemos obtener un elemento específico de la lista usando su índice. Los índices comienzan en 0,
por lo que el primer elemento tiene índice 0.
Modificar elementos
Las listas son mutables, lo que permite cambiar un elemento específico usando su índice. Esto es
útil para actualizar valores sin crear una nueva lista.
[ ]numeros = [1, 2, 3]
numeros[1] = 10
print(numeros) # [1, 10, 3]
[1, 10, 3]
Agregar elementos
Podemos agregar un elemento al final de la lista usando append(). Esto nos permite expandir la
lista sin redefinirla.
[ ]numeros = [1, 2, 3]
[Link](4)
print(numeros) # [1, 2, 3, 4]
[1, 2, 3, 4]
Eliminar elementos
Podemos eliminar un elemento específico usando remove() con el valor que queremos borrar.
Esto elimina la primera aparición de ese valor en la lista.
[ ]numeros = [1, 2, 3, 4]
[Link](2)
print(numeros) # [1, 3, 4]
[1, 3, 4]
Podemos usar un bucle for para recorrer todos los elementos de una lista. Esto nos permite
procesar, imprimir o manipular cada elemento de forma individual.
Ana
Luis
Carlos
La función type() permite determinar el tipo de dato que contiene una variable. Esto es útil para
saber si la variable es un número, un string, una lista u otro tipo de dato.
list
Una lista puede contener distintos tipos de datos, como strings, números o incluso otras listas.
Esto hace que las listas sean estructuras muy flexibles para almacenar información variada.
] # Esta lista tiene un string, un número y una lista como sus elementos
Podemos crear una lista sencilla con corchetes [] y separando los elementos por comas. Esta lista
puede almacenarse en una variable para usarla y manipularla posteriormente.
Lista anidada
Una lista puede contener otras listas como elementos, creando una estructura anidada. Esto
permite organizar información jerárquica o compleja dentro de una sola lista.
[][
"hola",
1,
[1,2,3],[
"hola",
1,
[1,2,3],
La expresión word[5] obtiene el sexto carácter del string (los índices comienzan en 0). En word =
"Python", esto devuelve 'n'.
El índice negativo -1 permite acceder al último carácter de un string. Para word = "Python", word[-
1] devuelve 'n'.
[ ]word[-1] #Último carácter
[ ]print(word[3])
NOTA IMPORTANTE
Ejemplo:
list_vble = [45, 23, 38, 2, 8, 17] # creación de una lista
list_vble[3] # accediendo al valor en la posición 3
Los strings tienen un comportamiento similar a las List, pero los strings son inmutables, mientras
que las listas sí son mutables.
Indexación en strings
Ejemplo:
word = "Python" # definición de un string
word[0] # caracter en la posición 0
En este caso, el resultado será 'P', ya que es el primer carácter del string "Python".
Para obtener un carácter en una posición específica de un string, se utiliza la indexación con
corchetes [].
Ejemplo:
word = "Python"
print(word[3]) # imprime el carácter en la posición 3
[ ]print(word [3])
En Python, los índices negativos permiten contar desde el final del string hacia el inicio. El índice -
1 corresponde al último carácter, -2 al penúltimo, y así sucesivamente.
Ejemplo:
word = "Python"
print(word[-6]) # accede al primer carácter usando índice negativo
Como la cadena "Python" tiene 6 caracteres, -6 corresponde al primer carácter, por lo que el
resultado será 'P'.
[ ]print(word [-6])
En Python, los índices negativos permiten contar desde el final del string hacia el inicio. Sin
embargo, si el índice es menor que -len(string), se produce un error.
Ejemplo:
word = "Python"
print(word[-9]) # índice fuera del rango de la cadena
La cadena "Python" tiene 6 caracteres, por lo que los índices negativos válidos van de -6 a -1.
Intentar usar -9 genera un IndexError: índice fuera de rango.
[ ]print(word [-9])
En Python, el operador : se utiliza para indicar rangos y seleccionar varios elementos de una lista o
string.
Ejemplo:
word = "Python"
word[0:3] # selecciona los caracteres desde la posición 0 hasta la 2
Cuando se omite el índice de inicio en un slicing, Python asume que se comienza desde el primer
elemento (índice 0).
La notación [:final] selecciona todos los elementos desde el inicio hasta final - 1, sin incluir el
índice final.
Ejemplo:
word = "Python"
word[:2] # selecciona los caracteres desde el inicio hasta la posición 1
Py
Cuando se omite el índice final en un slicing, Python selecciona todos los elementos desde el
índice de inicio hasta el último elemento del string o lista.
La notación [inicio:] selecciona todos los elementos desde inicio hasta el final.
Ejemplo:
word = "Python"
word[2:] # selecciona los caracteres desde la posición 2 hasta el final
Esto devuelve 'thon', que corresponde a los caracteres en los índices 2, 3, 4 y 5.
thon
En Python, se puede utilizar un tercer parámetro en el slicing llamado paso (stride), que indica
cada cuántos elementos se selecciona uno.
Ejemplo:
word = "Python"
word[1:6:2] # selecciona los caracteres desde el índice 1 hasta el 5, tomando uno cada 2
yhn
Cuando se omiten los índices de inicio y final, Python selecciona todos los elementos del string o
lista.
El tercer parámetro paso indica cada cuántos elementos se toma uno.
La notación [::paso] selecciona todos los elementos desde el inicio hasta el final, aplicando el paso
indicado.
Ejemplo:
word = "Python"
word[::2] # selecciona todos los caracteres, tomando uno cada 2
[ ]word [::2]
Pto
En Python, se puede usar un tercer parámetro en el slicing llamado paso (stride), que indica cada
cuántos elementos se selecciona uno.
La notación general es [inicio:final:paso], donde:
- inicio es el índice desde donde comienza la selección.
- final es el índice hasta donde se selecciona, sin incluirlo.
- paso indica el salto entre elementos seleccionados.
Ejemplo:
word = "Python"
word[1:6:2] # selecciona los caracteres desde el índice 1 hasta el 5, tomando uno cada 2
La notación string[:n] toma los primeros n caracteres, y string[n:] toma los caracteres desde la
posición n hasta el final.
Sumando ambos segmentos se reconstruye el string completo o se pueden reorganizar partes de
él.
Ejemplo:
word = "Python"
word[:2] + word[2:] # concatena los caracteres desde el inicio hasta 1, y desde 2 hasta el final
Esto devuelve 'Python', que es el string original reconstruido mediante slicing y concatenación.
Python
En este caso:
- word[:4] devuelve los caracteres desde el inicio hasta el índice 3.
- word[2:] devuelve los caracteres desde el índice 2 hasta el final.
Ejemplo:
word = "Python"
word[:4] + word[2:] # concatena los caracteres de 0 a 3 con los de 2 a 5
Esto genera 'Pytthon', porque los caracteres en las posiciones 2 y 3 ('t' y 'h') se repiten en la
concatenación.
[ ]word [:4] + word [2:] # concatenación de strings
Pytthon
En Python, los índices negativos permiten contar desde el final del string hacia el inicio.
Ejemplo:
word = "Python"
word[-2:] # selecciona los últimos 2 caracteres
Esto devuelve 'on', que corresponde a los dos últimos caracteres del string "Python".
[ ]word [-2:] # desde la posición -2 hasta el final, osea, los últimos dos caracteres
on
En Python, se puede usar la notación de slicing con ambos índices omitidos para seleccionar todos
los elementos de un string o lista.
La notación [:] devuelve una copia completa del string o lista original.
Ejemplo:
word = "Python"
word[:] # selecciona todos los caracteres
[ ]word [:]
Python
En Python, el slicing permite usar un paso negativo para recorrer el string desde el final hacia el
inicio.
La notación [inicio:final:paso] con paso = -1 recorre todos los caracteres en orden inverso.
Ejemplo:
word = "Python"
word[::-1] # recorre el string desde el final hasta el inicio
nohtyP
En Python, los strings son inmutables, lo que significa que no se puede cambiar un carácter
individual asignándole un nuevo valor.
Ejemplo:
word = "Python"
word[2] = 'e' # intento de modificar el tercer carácter
Esto generará un TypeError: 'str' object does not support item assignment, porque no se puede
asignar un nuevo valor a una posición específica de un string. Para modificar un string, se deben
crear nuevos strings usando concatenación o slicing.
En Python, las listas son estructuras de datos mutables, lo que significa que se pueden modificar,
agregar o eliminar elementos después de su creación.
Por el contrario, los strings no son mutables, es decir, no se puede cambiar un carácter individual
de un string existente. Para modificar un string, es necesario crear un nuevo string mediante
concatenación, slicing u otras operaciones.
En Python, las listas son estructuras de datos mutables que permiten almacenar múltiples
elementos en un solo objeto.
Ejemplo:
H = [1,2,3,4,5,6,7,8,9,10] # crea una lista con los números del 1 al 10
Cada elemento de la lista se puede acceder mediante su índice, modificar, eliminar o agregar
nuevos elementos, gracias a la mutabilidad de las listas.
[ ] H = [1,2,3,4,5,6,7,8,9,10]
En Python, cuando se asigna una lista a otra variable usando el operador =, ambas variables
apuntan a la misma lista en memoria.
Ejemplo:
H = [1,2,3,4,5,6,7,8,9,10]
P = H # P apunta a la misma lista que H
Esto significa que cualquier modificación hecha en P también afectará a H, y viceversa, porque
ambas variables comparten la misma referencia de la lista.
[ ]P = H
Como las listas en Python son mutables, se pueden cambiar los valores de sus elementos
mediante indexación.
Ejemplo:
P[9] = 9 # cambia el valor del décimo elemento de la lista P
Esto modifica la lista P, y dado que P y H apuntan a la misma lista, el cambio también se refleja
en H. Antes: [1,2,3,4,5,6,7,8,9,10]
Después: [1,2,3,4,5,6,7,8,9,9].
[ ] P[9] = 0
La función print() permite mostrar en pantalla el contenido de cualquier variable, incluyendo listas.
Ejemplo:
P # lista previamente modificada
print(P) # imprime la lista en pantalla
[ ]print (P)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
Cuando se asigna una lista a otra variable usando =, ambas variables apuntan a la misma lista en
memoria. Por lo tanto, cualquier cambio en una de las variables se refleja en la otra.
Ejemplo:
P=H
H[0] = 535 # se modifica el primer elemento de H
print(P) # imprime la lista a la que P también apunta
Salida:
[535, 2, 3, 4, 5, 6, 7, 8, 9, 9]
Observa que al cambiar H[0], el cambio también aparece en P, porque ambas variables comparten
la misma referencia de la lista.
[ ]print("Observar loq ue ocurre con 'P' cuando se cambia el valor de 'H', si P = H")
H[0] = 535
print (P)
[535, 2, 3, 4, 5, 6, 7, 8, 9, 0]
En Python, las f-strings permiten incluir el valor de variables directamente dentro de un string
usando llaves {}.
Ejemplo:
print(f"P = {P}") # imprime la lista P con formato
print(f"H = {H}") # imprime la lista H con formato
Dado que P y H apuntan a la misma lista y previamente se modificó H[0] = 535, la salida será:
P = [535, 2, 3, 4, 5, 6, 7, 8, 9, 9]
H = [535, 2, 3, 4, 5, 6, 7, 8, 9, 9]
Esto muestra cómo las f-strings permiten combinar texto y variables de manera clara y legible.
P = [535, 2, 3, 4, 5, 6, 7, 8, 9, 0]
H = [535, 2, 3, 4, 5, 6, 7, 8, 9, 0]
En este ejemplo se crean dos listas N y G con los mismos valores, pero inicialmente son listas
diferentes en memoria:
N = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
G = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
Luego, al ejecutar:
G=N
la variable G pasa a referenciar la misma lista que N. Desde este momento, cualquier modificación
en N también afectará a G, y viceversa, ya que ambas apuntan al mismo objeto en memoria.
[ ]N = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
G = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
G=N
Efecto de modificar listas que comparten referencia
Ejemplo:
G[0] = 81 # modifica el primer elemento de la lista G
print(G) # imprime la lista G
print(N) # imprime la lista N
Salida:
[81, 8, 7, 6, 5, 4, 3, 2, 1, 0]
[81, 8, 7, 6, 5, 4, 3, 2, 1, 0]
[ ]G [0] = 81
print (G)
print (N)
[81, 8, 7, 6, 5, 4, 3, 2, 1, 0]
[81, 8, 7, 6, 5, 4, 3, 2, 1, 0]
Las listas no se copian al asignarlas a otra variable, es un puntero de a la lista orignal Esto evita
problemas de memoria pero puede llevar a errores en la programación, entonces la copia de debe
hacer explicita
Listas anidadas
En Python, una lista puede contener no solo números o strings, sino también otras listas. A esto se
le llama lista anidada.
Ejemplo:
nest = [1, 2, 3, [4, 5, ["Informática"]]] # lista con elementos anidados
nest
Aquí el último elemento es otra lista, que a su vez contiene otra lista con el string "Informática".
Ejemplo:
nest = [1, 2, 3, [4, 5, ["Informática"]]]
nest[3][2] # accede a la sublista ["Informática"]
Resultado:
["Informática"]
Explicación:
- nest[3] accede a la sublista que contiene [4, 5, ["Informática"]].
- nest[3][2] accede al tercer elemento de esa sublista, que es otra lista: ["Informática"].
- El tipo de este elemento es list, porque sigue siendo una lista en Python.
[ ]nest[3][1]
Ejemplo:
nest = [1, 2, 3, [4, 5, ["Informática"]]]
nest[3][2][0] # accede al string "Informática"
Resultado:
"Informática"
Explicación:
- nest[3] accede a la sublista que contiene [4, 5, ["Informática"]].
- nest[3][2] accede al tercer elemento de esa sublista, que es otra lista: ["Informática"].
- nest[3][2][0] accede al primer elemento de esa lista, que es el string "Informática".
- El tipo de este elemento es str, porque ahora es un string en Python.
[ ]nest [3]
nest [3][2] # De la lsita que es el elemento 4, obtener el elemento 3# el tipo de resultado
['Informática']
Lista de ejemplo:
nest = [1, 2, 3, [4, 5, ["Informática"]]]
nest[3] # accede a la cuarta posición de la lista principal
Resultado:
[4, 5, ["Informática"]]
Explicación:
- nest[3] devuelve la sublista que contiene 4, 5 y otra lista ["Informática"].
- El primer elemento de esta sublista es 4, el segundo es 5 y el tercero es otra lista ["Informática"].
- El tipo de nest[3] es list, porque sigue siendo una lista en Python.
[4, 5, ['Informática']]
Lista de ejemplo:
nest = [1, 2, 3, [4, 5, ["Informática"]]]
nest # muestra toda la lista
Resultado:
[1, 2, 3, [4, 5, ["Informática"]]]
Explicación:
- Al usar nest, accedemos a la lista completa, incluyendo los elementos individuales 1, 2, 3 y la
sublista [4, 5, ["Informática"]].
- El tipo de nest es list, porque todo el objeto sigue siendo una lista en Python.
[ ]nest
Lista de ejemplo:
nest = ['perro', 'gato', [9, [1, 2, 3, [4, 5, ["Informática"]]]]]
nest # muestra toda la lista
Resultado:
['perro', 'gato', [9, [1, 2, 3, [4, 5, ["Informática"]]]]]
Explicación:
- Al usar nest, accedemos a la lista completa, incluyendo los elementos individuales 'perro', 'gato' y
la sublista [9, [1, 2, 3, [4, 5, ["Informática"]]]].
- El tipo de nest es list, porque todo el objeto sigue siendo una lista en Python.
- Dentro de la sublista se encuentran más elementos y sublistas anidadas, que pueden accederse
usando índices adicionales.
Lista de ejemplo:
nest = ['perro', 'gato', [9, [1, 2, 3, [4, 5, ["Informática"]]]]]
nest[2] # accede a la tercera posición de la lista principal
Resultado:
[9, [1, 2, 3, [4, 5, ["Informática"]]]]
Explicación:
- nest[2] devuelve la sublista que contiene el número 9 y otra sublista [1, 2, 3, [4, 5,
["Informática"]]].
- El tipo de nest[2] es list, porque sigue siendo una lista en Python.
- Para acceder a elementos dentro de esta sublista, se pueden usar índices adicionales,
como nest[2][0] o nest[2][1].
[]
nest[2]
Lista de ejemplo:
nest = ['perro', 'gato', [9, [1, 2, 3, [4, 5, ["Informática"]]]]]
nest[1] # accede a la segunda posición de la lista principal
Resultado:
'gato'
Explicación:
- nest[1] devuelve el segundo elemento de la lista principal, que es el string 'gato'.
- El tipo de nest[1] es str, porque se trata de un string en Python.
- Para acceder a elementos dentro de sublistas, se necesitarían índices adicionales, pero 'gato' es
un valor simple.
[ ]nest [1]
gato
Acceder a elementos de la lista anidada
En Python, podemos acceder a elementos específicos de una lista y sus sublistas usando índices [].
Lista de ejemplo:
nest = ['perro', 'gato', [9, [1, 2, 3, [4, 5, ["Informática"]]]]]
nest[3] # intenta acceder al cuarto elemento de la lista principal
nest[2][1] # accede a la segunda posición de la sublista dentro del tercer elemento
Resultado:
nest[3] → IndexError
nest[2][1] → [1, 2, 3, [4, 5, ["Informática"]]]
Explicación:
- nest[3] genera un IndexError porque la lista principal solo tiene 3 elementos (índices 0, 1 y 2).
- nest[2] devuelve [9, [1, 2, 3, [4, 5, ["Informática"]]]], que es el tercer elemento de la lista
principal.
- Luego, [1] accede al segundo elemento de esa sublista, resultando en [1, 2, 3, [4, 5,
["Informática"]]].
- El resultado es una sublista, y no un valor simple, porque estamos dentro de un nivel anidado de
la lista.
[ ]nest [3]
nest [2][1]
Informática
En Python, podemos acceder a elementos de una lista usando índices [], pero debemos tener en
cuenta el tipo de dato.
Lista de ejemplo:
nest = ['perro', 'gato', [9, [1, 2, 3, [4, 5, ["Informática"]]]]]
nest[0][0] # intenta acceder al primer carácter del primer elemento
Resultado:
'p'
Explicación:
- nest[0] devuelve el primer elemento de la lista principal: 'perro'.
- nest[0][0] accede al primer carácter del string 'perro', que es 'p'.
- En Python, los strings son secuencias de caracteres, por lo que se pueden indexar como listas.
- Este índice no accede a una sublista, sino a un carácter individual dentro del string.
[ ]nest [0][0]
p
Acceder al primer carácter del segundo elemento de la lista
En Python, podemos acceder a elementos de una lista y de los strings dentro de ella usando
índices [].
Lista de ejemplo:
nest = ['perro', 'gato', [9, [1, 2, 3, [4, 5, ["Informática"]]]]]
nest[1][0] # accede al primer carácter del segundo elemento de la lista principal
Resultado:
'g'
Explicación:
- nest[1] devuelve el segundo elemento de la lista principal: 'gato'.
- nest[1][0] accede al primer carácter del string 'gato', que es 'g'.
- Los strings en Python son secuencias de caracteres, por lo que podemos indexarlos como si
fueran listas.
- Este índice no accede a una sublista, sino a un carácter individual dentro del string.
[ ]nest [1][0]
En Python, podemos acceder a elementos dentro de una lista de listas usando índices [].
Lista de ejemplo:
empleados = [
["Federico Archibaldo", 35, "Departamento de Informática", 4500],
["Ximena", 29, "Sistemas", 3800],
["Alonso", 40, "Contabilidad", 2000],
["Maria", 27, "Sistemas", 3600]
]
empleados[1][1] # accede a la edad del segundo empleado
Resultado:
29
Explicación:
- empleados[1] devuelve el segundo elemento de la lista principal: ["Ximena", 29, "Sistemas",
3800].
- [1] accede al segundo elemento de esa sublista, que es la edad: 29.
- En Python, los índices empiezan en 0, por lo que el índice 1 siempre apunta al segundo elemento.
[ ]empleados [1][1]
29
En Python, podemos acceder a elementos dentro de una lista de listas usando índices [].
Lista de ejemplo:
empleados = [
["Federico Archibaldo", 35, "Departamento de Informática", 4500],
["Ximena", 29, "Sistemas", 3800],
["Alonso", 40, "Contabilidad", 2000],
["Maria", 27, "Sistemas", 3600]
]
empleados[2][3] # accede al salario del tercer empleado
Resultado:
2000
Explicación:
- empleados[2] devuelve el tercer elemento de la lista principal: ["Alonso", 40, "Contabilidad",
2000].
- [3] accede al cuarto elemento de esa sublista, que es el salario: 2000.
- Los índices en Python comienzan en 0, por lo que el índice 2 apunta al tercer empleado y el índice
3 al cuarto dato dentro de su sublista.
[ ]empleados [2][3]
2000
En Python, podemos modificar elementos dentro de una lista de listas usando índices [] y el
operador de asignación =.
Lista de ejemplo:
empleados = [
["Federico Archibaldo", 35, "Departamento de Informática", 4500],
["Ximena", 29, "Sistemas", 3800],
["Alonso", 40, "Contabilidad", 2000],
["Maria", 27, "Sistemas", 3600]
]
empleados[3][2] = "Ventas" # cambia el departamento del cuarto empleado
Resultado:
empleados[3] ahora es ["Maria", 27, "Ventas", 3600]
Explicación:
- empleados[3] accede al cuarto empleado de la lista principal: ["Maria", 27, "Sistemas", 3600].
- [2] apunta al tercer elemento de esa sublista, que corresponde al departamento.
- Al asignar "Ventas" con =, reemplazamos el valor anterior "Sistemas" por el nuevo
valor "Ventas".
- Esto modifica directamente la lista original sin crear una nueva.
En Python, podemos cambiar elementos dentro de una lista de listas usando índices [] y el
operador de asignación =.
Lista de ejemplo:
empleados = [
["Federico Archibaldo", 35, "Departamento de Informática", 4500],
["Ximena", 29, "Sistemas", 3800],
["Alonso", 40, "Contabilidad", 2000],
["Maria", 27, "Ventas", 3600]
]
empleados[3][0] = "María" # cambia el nombre del cuarto empleado
Resultado:
empleados[3] ahora es ["María", 27, "Ventas", 3600]
Explicación:
- empleados[3] accede al cuarto empleado de la lista principal.
- [0] apunta al primer elemento de esa sublista, que corresponde al nombre.
- Al asignar "María" con =, reemplazamos el valor anterior "Maria" por el nuevo valor "María".
- Esto modifica directamente la lista original, actualizando el nombre correctamente con tilde.
En Python, podemos combinar índices de listas y de strings para acceder a partes específicas de los
datos.
Lista de ejemplo:
empleados = [
["Federico Archibaldo", 35, "Departamento de Informática", 4500],
["Jimena", 29, "Sistemas", 3800],
["Alonso", 40, "Contabilidad", 2000],
["María", 27, "Ventas", 3600]
]
empleados[1][0][0][:2] # intenta acceder a los dos primeros caracteres del primer carácter del
nombre del segundo empleado
Resultado:
'J'
Explicación:
- empleados[1] accede al segundo empleado: ["Jimena", 29, "Sistemas", 3800].
- [0] accede al nombre del empleado: "Jimena".
- [0] accede al primer carácter del string, que es 'J'.
- [:2] hace slicing sobre el carácter `'J'`, pero como es un string de un solo carácter, el resultado
sigue siendo 'J'.
- Para obtener los dos primeros caracteres del nombre completo, habría que
usar empleados[1][0][:2] en lugar de agregar el índice `[0]`.
[ ]empleados [1][0][0][:2]
empleados = [
["Federico Archibaldo", 35, "Departamento de Informática", 4500],
["Jimena", 29, "Sistemas", 3800],
["Alonso", 40, "Contabilidad", 2000],
["María", 27, "Ventas", 3600]
]
print(empleados)
Resultado en la consola:
[['Federico Archibaldo', 35, 'Departamento de Informática', 4500],
['Jimena', 29, 'Sistemas', 3800],
['Alonso', 40, 'Contabilidad', 2000],
['María', 27, 'Ventas', 3600]]
Explicación:
- Cada sublista representa un empleado con sus datos: nombre, edad, departamento y salario.
- La lista refleja todas las modificaciones realizadas:
• El segundo empleado ahora se llama "Jimena".
• El cuarto empleado se llama "María" y su departamento fue cambiado a "Ventas".
- Esta estructura permite acceder a cualquier dato usando índices de lista, por
ejemplo empleados[1][0] para el nombre de Jimena.
[ ]print (empleados)
(['Federico Archibaldo', 35, 'Departamento de Informática', 4500], ['Jimena', 29, 'Sistemas', 3800],
['Alonso', 40, 'Contabilidad', 2000], ['María', 27, 'Ventas', 3600])
13900
Podemos calcular el salario quincenal, anual y mostrarlo con símbolo $ usando Python.
Lista de ejemplo:
empleados = ["Federico Archibaldo", 35, "Departamento de Informática", 4500],
["Jimena", 29, "Sistemas", 3800],
["Alonso", 40, "Contabilidad", 2000],
["María", 27, "Ventas", 3600]
Resultado esperado:
Empleado: Federico Archibaldo
Salario quincenal: $2250.00
Salario anual: $54000.00
----------------------------------------
Empleado: Jimena
Salario quincenal: $1900.00
Salario anual: $45600.00
----------------------------------------
Empleado: Alonso
Salario quincenal: $1000.00
Salario anual: $24000.00
----------------------------------------
Empleado: María
Salario quincenal: $1800.00
Salario anual: $43200.00
----------------------------------------
Explicación:
- emp[3] obtiene el salario mensual de cada empleado.
- Dividimos entre 2 para obtener el salario quincenal.
- Multiplicamos por 12 para obtener el salario anual.
- Usamos f-strings con ${valor:.2f} para mostrar el símbolo de pesos y dos decimales.
- Esto permite tener un resumen completo de los salarios de todos los empleados.
----------------------------------------
Empleado: Jimena
----------------------------------------
Empleado: Alonso
----------------------------------------
Empleado: María
----------------------------------------
Dada la matriz [ [1 2 3] [4 4 1] [0 9 1] ]
Podemos calcular la suma de la diagonal principal y secundaria de una matriz cuadrada usando
Python.
Matriz de ejemplo:
matriz = [[1,2,3],
[4,4,1],
[0,9,1]]
for i in range(n):
suma_principal += matriz[i][i]
suma_secundaria += matriz[i][n-1-i]
Resultado esperado:
Diagonal principal: 6
Diagonal secundaria: 7
Suma de ambas: 13
Suma sin repetir el centro: 9
Explicación:
[ ]# Imprimir la suma de las diagonales
matriz = [[1,2,3],[4,4,1],[0,9,1]]
En Python, una lista puede contener otros tipos de datos, incluso otras listas. El ejemplo es:
Estructura:
- Primer nivel: [1, 2, 3, [...]]
- Segundo nivel: [4, 5, ["Informática"]]
- Tercer nivel: ["Informática"]
Acceso a elementos:
- nest[0] → 1
- nest[1] → 2
- nest[2] → 3
- nest[3][0] → 4
- nest[3][1] → 5
- nest[3][2][0] → "Informática"
Explicación paso a paso:
- nest es la lista principal.
- Dentro de ella, el cuarto elemento (nest[3]) es otra lista: [4, 5, ["Informática"]].
- Esa lista a su vez contiene otra lista en la tercera posición (nest[3][2]) que guarda el
texto "Informática".
Este tipo de listas se llaman listas anidadas y permiten organizar datos en niveles.
El código:
Explicación:
- La lista original es: [1, 2, 3, [4, 5, ["Informática"]]]
- La notación nest[1:3] significa "desde el índice 1 hasta antes del índice 3".
- Esto corresponde a los elementos [2, 3].
- Al asignar = [], esos elementos se eliminan de la lista.
Resultado:
[1, [4, 5, ["Informática"]]]
Paso a paso:
- nest[0] es 1 (se mantiene).
- nest[1] y nest[2] eran 2 y 3 (se eliminan).
- Lo que queda es el último elemento [4, 5, ["Informática"]].
Este método es útil para eliminar rangos de elementos en una lista usando índices.
[ ]len(nest)
2
Explicación de lista anidada en Python
Lista definida:
Explicación:
- La lista principal contiene tres elementos: 1, 3 y otra lista.
- El tercer elemento (nest1[2]) es otra lista: [4, 5, ['tecnológico', 8], 'Informática'].
- Dentro de esa lista, el índice [2] corresponde a ['tecnológico', 8].
- Esa lista interna contiene la cadena "tecnológico" y el número 8.
Acceso a elementos:
- nest1[0] → 1
- nest1[1] → 3
- nest1[2][0] → 4
- nest1[2][1] → 5
- nest1[2][2][0] → "tecnológico"
- nest1[2][2][1] → 8
- nest1[2][3] → "Informática"
Resultado al imprimir:
[1, 3, [4, 5, ['tecnológico', 8], 'Informática']]
Paso a paso:
- nest1 comienza con dos enteros simples: 1 y 3.
- El último elemento es una lista anidada con cuatro valores (4, 5, otra lista y "Informática").
- Esa sublista demuestra cómo Python permite listas dentro de listas para organizar datos en
varios niveles.
El código:
Resultado:
[1, 2, 3, [4, 5, [8], "Informática"]]
Paso a paso:
- nest1[3] → [4, 5, ["tecnológico", 8], "Informática"]
- nest1[3][2] → ["tecnológico", 8]
- nest1[3][2][0] → "tecnológico" (este es el que se borra)
- Lo que queda es [8] dentro de la lista anidada.
De esta manera podemos borrar elementos específicos dentro de listas anidadas conociendo su
índice exacto.
del nest1[2][2][0]
nest # observar que el valor este dentro de una lista
Concatenar listas
El código:
print(nest)
miLista = ["a", "b", "c"]
print(miLista)
Explicación:
- print(nest) mostrará en la consola el contenido actual de la lista nest.
- A continuación, se crea una nueva lista llamada miLista con los elementos "a", "b" y "c".
- print(miLista) mostrará el contenido de esta nueva lista en la consola.
Resultado esperado:
Si nest tiene el valor [1, [4, 5, ["Informática"]]] después de modificaciones previas:
[1, [4, 5, ["Informática"]]]
["a", "b", "c"]
Paso a paso:
- Python imprime la primera lista usando print().
- Luego se define otra lista simple con elementos de texto.
- Finalmente, se imprime la nueva lista.
[ ]print(nest)
miLista=["a","b","c"]
print(miLista)
El código:
# Concatenar listas
NuevaLista = nest + miLista
print(NuevaLista)
Explicación:
- La operación nest + miLista une las dos listas en una sola.
- nest es la lista original que puede tener elementos simples o anidados.
- miLista es otra lista que se agregó al final.
- La concatenación no modifica las listas originales, sino que crea una nueva lista
llamada NuevaLista.
Resultado esperado:
Si nest = [1, [4, 5, ["Informática"]]] y miLista = ["a", "b", "c"], entonces:
[1, [4, 5, ["Informática"]], "a", "b", "c"]
Paso a paso:
- Se toma la primera lista nest.
- Se agregan los elementos de miLista al final.
- El resultado se guarda en NuevaLista y se imprime.
[ ]# Concatenar listas
NuevaLista = nest + miLista
NuevaLista
El código:
Explicación:
- El operador * aplicado a una lista permite repetir sus elementos varias veces.
- miLista es la lista original, por ejemplo: ["a", "b", "c"].
- miLista * 4 genera una nueva lista que repite el contenido de miLista cuatro veces consecutivas.
Resultado esperado:
["a", "b", "c", "a", "b", "c", "a", "b", "c", "a", "b", "c"]
Paso a paso:
- Se toma la lista original miLista.
- Se repite su contenido 4 veces consecutivas.
- Se guarda el resultado en la nueva lista repetida y se imprime.
Este método es útil para duplicar o repetir secuencias de elementos de manera rápida sin usar
bucles.
repetida = miLista * 4
repetida
['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c']