Las listas son una estructura de datos esencial en Python, utilizada frecuentemente por los programadores para manejar colecciones de elementos. Una lista se representa mediante corchetes [] y puede contener múltiples tipos de datos, como números, cadenas de texto (strings) o valores booleanos. La versatilidad de las listas las convierte en una herramienta poderosa para almacenar información variada en un solo lugar.
¿Cómo se declara una lista en Python?
Para declarar una lista en Python, se utilizan corchetes y los elementos se separan por comas. A continuación, se muestra un ejemplo de una lista de números:
numbers =[1,2,3,4]
Esta lista almacena los números del 1 al 4. Para visualizar su contenido, se puede imprimir la lista y consultar su tipo de dato utilizando type:
print(numbers)print(type(numbers))
¿Puedo tener listas que almacenen diferentes tipos de datos?
Sí, una de las características más destacadas de las listas en Python es su capacidad para almacenar diversos tipos de datos juntos. Por ejemplo, en una sola lista puedes mezclar números, cadenas de texto y valores booleanos:
types =[42,True,"Hola"]print(types)
¿Qué es el índice y cómo se utilizan en las listas?
El concepto de índice es fundamental al trabajar con listas y es muy similar al de los strings. El índice representa la posición de un elemento dentro de la lista, comenzando por 0. Puedes acceder a un elemento específico de la lista utilizando su índice:
tareas =["lavar los platos","jugar videojuegos"]print(tareas[0])# Imprime "lavar los platos"
¿Las listas son mutables?
Una de las grandes ventajas de las listas frente a otros tipos de datos como las cadenas de texto es su mutabilidad. Esto significa que puedes modificar los elementos de una lista después de haberla declarado. Por ejemplo, si necesitas cambiar un elemento en una posición específica, simplemente asigna un nuevo valor:
tareas[0]="ver cursos de Platzi"print(tareas)# Ahora la lista contiene "ver cursos de Platzi" en lugar de "lavar los platos"
¿Cómo selecciono un subconjunto de elementos de una lista?
Utilizando la técnica de slicing, es posible seleccionar un subconjunto de elementos dentro de una lista. Esto se hace especificando un rango de índices. Aquí un ejemplo donde extraemos elementos de la lista numbers:
El índice inicial es inclusivo, mientras que el final es exclusivo, lo que significa que se detiene antes de incluirlo en el resultado.
¿Puedo verificar la existencia de un elemento dentro de una lista?
El operador in es muy útil para verificar si un elemento está presente dentro de una lista. Sirve tanto para números como para cadenas de texto y valores booleanos:
if"Hola"in types:print("El elemento 'Hola' está en la lista types.")
Esta simple verificación devolverá True si el elemento buscado está presente en la lista.
Las listas en Python son una herramienta poderosa y versátil para gestionar colecciones de datos. Continúa explorando sus capacidades, como eliminar y agregar elementos, ya que en las futuras clases aprenderás operaciones avanzadas que pueden ser realizadas con ellas. ¡Sigue aprendiendo y puliendo tus habilidades en programación con Python!
.count(elemento) cuenta cuantas veces un elemento esta en una lista
.extend(lista) permite extender una lista agregándole los elementos de otra lista
.pop() elimina y retorna el ultimo elemento de la lista
.reverse() reversa el orden de la lista
.sort() ordena la lista de manera ascendente o descendente
Actualizar un valor
Lista = [1, 2, 3, 4, 5]
Lista[0] = -8
Lista = [-8, 2, 3, 4, 5], resultado de la lista luego de actualizar el valor
Agregar un elemento
Lista.append(indice,elemento) o
Lista.append(elemento) en este caso el nuevo elemento se agrega al final de la lista
Eliminar un elemento
Lista.remove(indice, elemento)
Gracias!
Me gusta la información muy completa
Las listas y los diccionarios son la base de la pólvora de Python.
I Love You Python!!!
Así son, son la base para las bibliotecas tan utilizadas como NumPy, Pandas, Matplotlib, Seaborn, etc.
I love Python too 😊
Hola!
Les comparto el código de la clase
# Listas# https://www.w3schools.com/python/python_lists.aspnumbers =[1,2,3,4]print(numbers)print(type(numbers))'''
Las listas tienen bastantes funcionalidades para almacenar informacion
Podemos guardar varios elementos de diferentes tipos de datos
'''
tasks =["wash the dishes","play videogames"]print(tasks)types =[1,True,"Hola"]print(types)# Tomar el primer elemento de la lista
print(numbers[0])print(tasks[0])print(types[0])'''
Los str sin inmutables
text ="Hola"#text[0]="W"'''
# Las listas si se pueden mutar
print(tasks)tasks[0]="watch Platzi courses"print(tasks)# Slicingprint(numbers[:3])print(Truein types)print("Hola"in types)
Muy bien
TIP: Nota importante: las listas se pueden modificar. Los strings no.
Gracias
Recuerde que al momento de definir un indice el primer valor es 0 y el ultimo el que ingresemos no es incluyente.
Importante aclaración
muy elefante :)
Listas, probablemente el primer eslabón importante en Python.
List is a collection which is ordered and changeable. Allows duplicate members.
Me gusta mucho la forma de explicar de este profesor y aparte agrego información y ejemplos con ChatGPT. Lean esta forma que también me lo explico chatgpt:
¡Por supuesto! En términos simples, las listas en Python son una forma de almacenar múltiples valores en una sola variable. Imagina que tienes una caja donde quieres guardar varios objetos de diferentes tipos: libros, CDs, juguetes, etc. Podrías ponerlos todos en la caja y llamar a esa caja "mi colección".
Las listas funcionan de manera similar a esa caja: son un contenedor que puede contener múltiples elementos de cualquier tipo, como números, texto, booleanos, otras listas, y cualquier otro tipo de dato que Python pueda manejar.
En Python, las listas se definen utilizando corchetes [ ] y los elementos se separan por comas. Por ejemplo, aquí hay una lista que contiene algunos números y palabras:
mi_lista = [1, 2, "tres", "cuatro"]
Lo importante que saco de esa explicación es que dentro de una lista también puede haber otra lista. Gracias por el aporte
numbers = [1, 2, 3, 4] # Lista de números
print(numbers)
print(type(numbers))
task =['make a dishes', 'play videogames']
print(task)
types = [1, True, 'Hola', 5.5] # Lista de fierente tipos de datos
print(numbers[0])
print(task[0])
text = 'Hola'
text[0] 'W' # Error
tasks[0] = 'watch paltzi courses'
print(tasks)
print(numbers[:3])
print(True in types)
print('Hola' in types)
Gracias
Indexing (indexación):
Indexing es el proceso de acceder a un elemento individual en una secuencia utilizando su posición específica, también conocida como índice.
En Python, los índices comienzan desde 0 para el primer elemento, y luego aumentan de forma secuencial.
Se utiliza el operador de corchetes [] junto con el índice deseado para realizar la indexación.
La indexación devuelve el elemento individual ubicado en la posición indicada por el índice.
Slicing (rebanado):
Slicing es el proceso de obtener un subconjunto de elementos de una secuencia utilizando un rango de índices.
Se especifica el rango de índices utilizando la sintaxis [inicio:fin], donde inicio es el índice del primer elemento a incluir y fin es el índice del primer elemento que se excluye.
El resultado del slicing es una nueva secuencia que contiene los elementos en el rango especificado.
Además del inicio y fin, se puede especificar un tercer valor opcional llamado paso, que indica el incremento entre los índices. El valor por defecto es 1.
El slicing permite acceder a múltiples elementos o a un subconjunto de la secuencia original.
LISTAS:
Acceso a la lista desde el índice de inicio hasta el índice de fin. Ejemplo:
lista =[1,2,3,4,5,6,7,8,9]print(lista[1]) #salida:2print(lista[1:6]) #Devuelve:[2,3,4,5,6]print(lista[-3]) #salida :[7]
La lista NO es inmutable, es decir, permite modificar los datos que han sido creados. Ejemplo
lista =[1,2,3,4,5,6,7,8,9]lista[2]=3.8 #Ahora3.8 es el tercer elemento
print(lista)
Permiten agregar nuevos valores. Ejemplo:
lista.append('Nuevo Dato')
por que si dada la lista
types = [1, False, 'hola mundo']
al imprimir
print(True in types)
me da como resultado True?
Chat GPT dice :
,Python busca si el valor True está presente en la lista types, y dado que True es un valor booleano que coincide con el segundo elemento de la lista(False), la expresión Truein types devuelve True.
Yo he echo la prueba, y el "1" lo toma como valor booleano "True".
A ver si me entero, el lenguaje o el programa reconoce el orden de manera diferente, es decir empieza a contar o desde CERO o desde UNO dependiendo de si estoy haciendo SLICING o si estoy imprimiendo?
Aporto mi código aplicando lo entendido:
tasks =["do the dishes","cooking dinner","sweep floor"]print("LISTA ORIGINAL: ",tasks)tasks[1]="sleep well"print("LISTA MODIFICADA: ",tasks)print("**********IMPRIMIENDO el dato 1 de tareas -> ", tasks[1])print("**********haciéndo SLICING hasta el dato 1 de tareas -> ", tasks[:1])print(Truein tasks)print("sweep floor"in tasks)
 se usa un metodo llamado Expresiones Regulares. Dejo link del curso:
https://platzi.com/cursos/expresiones-regulares/
Muchas gracias freemanchx, lo voy a revisar :D
""" List """numbers =[28,12,73,4]print("numbers =", numbers)print(type(numbers))tasks =["washes the dishes","do my homework","watch platzi courses"]print("tasks =", tasks)print(type(tasks))things =[39,"theme",False,48,"fire"]print("things =", things)print(type(things))
# indexing slicing
print("-"*35)numbers =[-3,79,3.18,-0.3,0]print("numbers =", numbers)print("numbers[2] =>", numbers[2])print("numbers[-1] =>", numbers[-1])print("numbers[:3] =>", numbers[:3])print("numbers[2:] =>", numbers[2:])print("numbers[1:4] =>", numbers[1:4])
# multi
print("-"*35)words =["plates","homework","platzi","python","history"]print("words =", words)print('words[0] = "cat"')words[0]="cat"print("words =", words)# inprint('"cat" in words =>',"cat"in words)print('"plates" in words =>',"plates"in words)
Lista es lo mismo que decir arreglos ?
Se puede decir que un arreglo es un tipo de lista, pero una lista no necesariamente es un arreglo.
Con una lista no puedes hacer operaciones matemáticas, puedes indexarlas.
Los arreglos son un tipo de datos más estático, y acuerdate que desde un inicio tu le defines el tamaño, a diferencia de una lista que puede crecer a lo desgraciado sin problemas.
Hola
Me pueden ayudar a hacer este ejercicio?
Se da una lista de números enteros. Es necesario "reducirlo" moviendo todos los elementos distintos de cero al lado izquierdo de la lista sin cambiar su orden, y todos los ceros al lado derecho.
El orden de los elementos distintos de cero no se puede cambiar, no se puede usar una lista adicional y la tarea se debe completar en una sola pasada a través de la lista. Imprime la lista resultante.
Ejemplo de datos de entrada:
4 0 5 0 3 0 0 5
Resultado de ejemplo:
4 5 3 5 0 0 0 0
No se si esta sea la mejor solucion pero funciona.
numbers =[1,0,0,7,4,3,7,0,5,5,5,5,8,0,0,0,2]print(numbers)for i inrange(len(numbers)):if numbers[i]==0: numbers.pop(i) numbers.append(0)for i inrange(len(numbers)):if numbers[i]==0: numbers.pop(i) numbers.append(0)print(numbers)
Esta solución también funciona:
Numeros = [4, 0, 5, 0, 3, 0, 0, 5]
NumerosCeros = []
NumerosOtros = []
for aux in Numeros:
if aux == 0:
NumerosCeros.append(aux)
else: NumerosOtros.append(aux)
print(NumerosCeros)
print(NumerosOtros)
newlist = NumerosOtros + NumerosCeros
print(newlist)
un dato característicos de los strings es que son elementos inmutables, mientas que las listas son mutables existen diversos metodos para manipular cada uno, si queremos manipular los elementos de un string dentro de una lista podemos utilizar la siguiente sintaxis:
lista[num] = lista[num].metodo(parameters)
en caso de que sea un string el elemento de lista esto nos ahorrará mucho trabajo a la hora de organizar los datos, en lo personal pienso que es una buena práctica asignar un tipo específico de datos para evitar equivocaciones a futuro con nuestro código.
#DATO
print(tasks[0][3:6])
agreguen esto al final del programa de esta clase y veras como pueden al mismo tiempo que agarran un dato de la lista, pueden hacer slicing.
Diferencias String vs Lists
String no se puede modificar; las listas se pueden modificar.