No tienes acceso a esta clase

ÂĄContinĂșa aprendiendo! Únete y comienza a potenciar tu carrera

Curso BĂĄsico de Python

Curso BĂĄsico de Python

Facundo GarcĂ­a Martoni

Facundo GarcĂ­a Martoni

Almacenar varios valores en una variable: listas

28/32
Recursos

Las listas nos permiten guardar mĂșltiples valores en una sola variable. Estas listas en Python nos permiten guardar elementos del mismo tipo o diferentes, por lo que podemos tener strings, nĂșmeros enteros y decimales juntos en una misma variable. Las listas tambiĂ©n son conocidas como arrays en otros lenguajes programaciĂłn.

CĂłmo trabajar con listas en Python

Declarar lista

my_lista = []
my_lista = list()

Unir listas

my_lista = [1]
my_lista2 = [2,3,4]
my_lista3 = my_lista + my_lista2
my_lista3 # [1,2,3,4]

Partir listas como slices

my_lista = [1,2,3]
my_lista[1:] = [2,3]

Extender una lista

my_lista = [1]
my_lista2 = [2,3,4]
my_lista.extend(my_lista2) # [1,2,3,4]

Multiplicar listas

my_lista = ['a']
my_lista2 = my_lista * 5
my_lista2 # ['a','a','a','a','a']

Eliminar el Ășltimo elemento de la lista

my_lista = [1,2,3,4,5]
my_lista = my_lista.pop()
my_lista # [1,2,3,4]

Ordenar lista

my_lista = [2,1,5,4,3]
my_lista = my_lista.sort()
my_lista # [1,2,3,4,5]

Eliminar un elemento

my_lista = [1,2,3,4,5]
del my_lista[0]
my_lista # [2,3,4,5]

Eliminar si conocemos su valor

my_lista = [1,2,3,4,5]
my_lista.remove(3)
my_lista #[1,2,4,5]

saber qué métodos hay dentro de un elemento

my_lista = [1,2,3,4,5]
dir(my_lista) # ['__add__', '__class__', '__contains__', ...

Modificar un elemento

my_lista = [1,2,3,4,5]
my_lista[0] = 100
my_lista # [100,2,3,4,5]

Añadir un elemento al final

my_lista = [1,2,3,4,5]
my_lista.append(6)
my_lista # [1,2,3,4,5,6]

Organizar una lista

my_lista = [2,5,1,3,4]
my_lista.sort() #[1,2,3,4,5]

MĂ©todos adicionales para listas

  • .sorted()
    También ordena como sort() pero modifica la lista inicial
  • .clear()
    VacĂ­a la lista
  • .count()
    Cuenta las veces que esta un elemento en lista
  • .index()
    Indica la posiciĂłn donde esta un elemento de la lista
  • .insert()
    Inserta un elemento en una posiciĂłn dada ej: lista.insert(posiciĂłn,item)
  • .reverse()
    Le da la vuelta a una lista

Aporte creado por: Rusbel BermĂșdez, Ignacio Crespo.

Aportes 208

Preguntas 32

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. RegĂ­strate o inicia sesiĂłn para participar.

**Suma **(+) Concatena dos o mĂĄs listas:
a=[1,2]
b=[3,4]
a + b --> [1,2,3,4]
**MultiplicaciĂłn **(*) Repite la misma lista:
a=[1,2]
a * 2 —> [1,2,1,2]
Añadir elemento al final de la lista:
a=[1]
a.append(2)=[1,2]
Eliminar elemento al final de la lista:
a=[1,2]
b=a.pop()
a=[1]
**Eliminar elemento **dado un indice:
a=[1,2]
b=a.pop(1)
a=[2]
Ordenar lista de menor a mayor, esto modifica la lista inicial
a=[3,8,1]
a.sort() —> [1,3,8]
Ordenar lista de menor a mayor, esto NO modifica la lista inicial
a=[3,8,1]
a.sorted() —> [1,3,8]
Eliminar elementos de lista Elimina el elemento de la lista dado su indice
a=[1,2,3]
del a[0] —> a[2,3]
Eliminar elementos de lista Elimina el elemento de la lista dado su valor
a=[0, 2, 4, 6, 8]
a.remove(6)
a=[0, 2, 4, 8]
**Range **creacion de listas en un rango determinado
a=(list(range(0,10,2))) -->crea un conteo desde 0 hasta 10 en pasos de 2 en 2.
a=[0,2,4,6,8]
Tamaño lista len Devuelve el valor del tamaño de la lista:
a=[0,2,4,6,8]
len(a)=5

append()
Este método agrega un elemento al final de una lista.

count()
Este método recibe un elemento como argumento, y cuenta la cantidad de veces que aparece en la lista.

extend()
Este método extiende una lista agregando un iterable al final.

index()
Este método recibe un elemento como argumento, y devuelve el índice de su primera aparición en la lista.

insert()
Este método inserta el elemento x en la lista, en el índice i.

pop()
Este mĂ©todo devuelve el Ășltimo elemento de la lista, y lo borra de la misma.

remove()
Este método recibe como argumento un elemento, y borra su primera aparición en la lista.

reverse()
Este método invierte el orden de los elementos de una lista.

sort()
Este método ordena los elementos de una lista.

Convertir a listas
Para convertir a tipos listas debe usar la funciĂłn list() la cual esta integrada en el interprete Python.

lista = [2, "CMS", True, ["telefono", 10]]
print lista, type(lista)

Ayuda integrada
Tambien pueden consultar toda la documentaciĂłn disponible sobre las listas desde la consola de la siguiente forma:

>>> help(list)

append()

Añade un ítem al final de la lista:

lista = [1,2,3,4,5]
lista.append(6)
print(lista)
# [1, 2, 3, 4, 5, 6]

clear()

VacĂ­a todos los Ă­tems de una lista:

lista = [1,2,3,4,5]
lista.clear()
#[]

extend()

Une una lista a otra:

l1 = [1,2,3]
l2 = [4,5,6]
l1.extend(l2)
#[1, 2, 3, 4, 5, 6]

count()

Cuenta el nĂșmero de veces que aparece un Ă­tem:

["Hola", "mundo", "mundo"].count("Hola")
#1

index()

Devuelve el Ă­ndice en el que aparece un Ă­tem (error si no aparece):

["Hola", "mundo", "mundo"].count("Hola")
#0

insert()

Agrega un Ă­tem a la lista en un Ă­ndice especĂ­fico:

l = [1,2,3]
l.insert(0,0) #(index , element) first position 0, second last position -1
							#last position len
# [ 0, 1 , 2 , 3 ]

pop()

Extrae un Ă­tem de la lista y lo borra:

l = [10,20,30,40,50]
print(l.pop())
print(l)

#50
#[10, 20, 30, 40]

Podemos indicarle un Ă­ndice con el elemento a sacar (0 es el primer Ă­tem):

print(l.pop(0))
print(l)

#10
#[20, 30, 40]

remove()

Borra el primer Ă­tem de la lista cuyo valor concuerde con el que indicamos:

l = [20,30,30,30,40]
l.remove(30)
print(l)
#[20, 30, 30, 40]

reverse()

Le da la vuelta a la lista actual:

l.reverse()
print(l)
#[40, 30, 30, 20]

Las cadenas no tienen el método .reverse() pero podemos simularlo haciendo unas conversiones:

lista = list("Hola mundo")
lista.reverse()
cadena = "".join(lista)
cadena
#'odnum aloH'

sort()

Ordena automĂĄticamente los Ă­tems de una lista por su valor de menor a mayor:

lista = [5,-10,35,0,-65,100]
lista.sort()
lista
#[-65, -10, 0, 5, 35, 100]

Podemos utilizar el argumento reverse=True para indicar que la ordene del revés:

lista.sort(reverse=True)
lista
#[100, 35, 5, 0, -10, -65]

Datos adicionales:

  1. El método append inserta los datos siempre al final de la lista
  2. El mĂ©todo pop por defecto (sin recibir ningĂșn parĂĄmetro) elimina el Ășltimo dato de la lista

Estos comportamientos son tĂ­picos de tipos de datos abstractos (ADT) como las pilas (stack), en donde el Ășltimo elemento que entra es el primero que sale LIFO (Last In First Out). Evidentemente una lista no es una pila, puesto que es una estructura de datos mĂĄs versĂĄtil. Sin embargo, estos mĂ©todos en particular tienen comportamientos similares.

Para aquellos que quieran conocer todos los métodos que pueden usarse con una lista (y otros tipos de dato secuenciales), comparto la documentación oficial de python

https://docs.python.org/3/library/stdtypes.html#sequence-types-list-tuple-range

ExplicaciĂłn de las listas:
Las listas nos permiten guardar mĂșltiples valores en una sola variable. Estas listas, en Python, nos permiten guardar elementos del mismo tipo o diferentes, por lo que podemos tener strings, nĂșmeros enteros y decimales juntos en una misma variable. Las listas tambiĂ©n son conocidas como “arrays” en otros lenguajes programaciĂłn. Para crear una, hacemos lo siguiente:

>>> objetos = [44, 5,5, "Ignacio", True] #Creamos una variable objetos, a la cual, a travĂ©s de corchetes, le asignamos mĂșltiples datos de diferentes tipos.
>>> objetos
[44, 5, 5, 'Ignacio', True] #Nos muestra todos los elementos de la variable
>>> objetos[1] #Nos muestra ele lemento que ocupa el Ă­ndice 1
5
>>> objetos[3] #Nos muestra el elemento que ocupa el Ă­ndice 3.
'Ignacio'
>>> objetos.append("3") #Gracias al método append, creamos un string ("3) que serå un elemento mås en la variable objetos.
>>> objetos
[44, 5, 5, 'Ignacio', True, '3'] #Nos muestra todos los elementos qué hay, ahora, con el 3 que se agregó a la lista.
>>> objetos.pop(5) #Gracias al método pop, eliminamos el elemento qué ocupa el índice 5 en la variable objetos.
'3'
>>> objetos 
[44, 5, 5, 'Ignacio', True] #Ahora nos muestra todos los objetos, ya sin el string "3".
>>>

Diccionario de métodos para las listas

  • append: es un mĂ©todo exclusivo para las listas, quĂ© nos permite agregar un elemento.
    EJEMPLO:
    objetos.append(3) #Hemos añadido el nĂșmero 3 de la lista. Este estarĂĄ Ășltimo en el orden de los elementos d ela lista hasta que creeemos un nuevo elemento.
  • pop: es un mĂ©todo exclusivo para las listas, quĂ© nos permite eliminar un elemento.
    EJEMPLO:
    objetos.pop(3) #Hemos eliminado el elemento qué estå en el índice 3, ahora, ya no formarå parte de los elementos de esa lista.

NadamĂĄs querĂ­a decir que este profesor es al que mejor le he entendido. Muy clara y entretenida su manera de explicar.

Estructuras de Datos con Python 🐉 - Listas

.
Las estructuras de datos estĂĄndar que incorpora Python son: list, tuple, dict, y set.
.
La estructura de la lista es la siguiente:

mi_lista = [1, 2, 'chocolate', 'vainilla', TRUE]

.
En estas clases veremos el uso de las listas las cuales pueden aplicar diferentes métodos para aumentar su funcionalidad. Los métodos son:
.
append(). Agrega un elemento al final de la lista.

list.append(item)

clear(). Quita todos los elementos de la lista.

list.clear()

copy(). Regresa (copia), los elementos de la lista.

new_list = list.copy()

count(). Regresa el nĂșmero de veces que un elemento aparece en la lista.

list.count(element)

extend(). Agrega elementos de un iterable(lista, tupla, string, etc) al final de la lista actual.

list1.extend(iterable)

index() Regresa el Ă­ndice del primer elemento con el valor espcificado.

list.index(element, start, end)

insert(). Agrega elementos en una posiciĂłn de Ă­ndice especĂ­fica.

list.insert(i, elem)

pop(). Quita elementos de una posiciĂłn especĂ­fica y permite agregarlos a otra lista.

list.pop(index)

remove(). Elimina el primer elemento que encuentra en la lista con el valor dado. Regresa None.

list.remove(element)

reverse(). Invierte el orden de la lista. No toma argumentos.

list.reverse()

sort(). Ordena la lista de forma ascendente o descendente(reverse = True). No retorna valores.

list.sort(key=..., reverse=...)

Vale la pena un tema un poco mas avanzado, este es los list comprehensions

Un ejemplo usando las clases anteriores

>>> square_numbers = [0, 1, 2, 3, 4]
>>> for x in range(5):
...     square_numbers.append(x**2)
...
>>> square_numbers
[0, 1, 2, 3, 4, 0, 1, 4, 9, 16]

El mismo ejemplo haciendo uso de list comprehensions

square_numbers = [x**2 for x in range(5)]
square_numbers
[0, 1, 4, 9, 16]

Mucho mas compacto y sencillo de leer, si no entendiste muy bien animo, eventualmente lo entenderas y lo usaras.

Por ultimo te dejo este articulo para ir mejorando tus habilidades

https://towardsdatascience.com/the-ultimate-guide-to-writing-better-python-code-1362a1209e5a

Hola gente, les comparto aqui un enlace de lo que se puede hacer con las listas
https://docs.python.org/3/tutorial/datastructures.html


Las listas tambien se pueden recorrer con un for ya que son objetos iterables es decir que podemos acceder a los objetos que llevan dentro.

Listas: Una lista es una estructura de datos y tipo de dato en python con caracteristicas especiales. Lo cual nos permiten almacenar cualquier tipo de valor como enteros, cadenas y hasta otras funciones.

por ejemplo:lista = [ 1, 2.5, "jose", [5,6] ,4]

–> Entonces basicamente una lista consiste en una variable donde se pueden adjuntar distintos elementos algo distinto a las variables convensionales o primitivas y para acceder a cualquiera de sus datos debemos hacerlo mediante a su indice:

print lista [0] = 1
print lista [1] = 2.5
print lista [3] = jose
print lista [4] = 5,6
print lista [5] = 4
print lista [1:3] = 2.5 "jose"
print lista [1:5] = 25, "jose", [5,6], 4

.append: Es un metodo que trabaja con las variables de tipo lista, para agregar un elemento a su variable, mediante al parametro que se le indique


.pop: Es un metodo que trabaja con variables de tipo lista, el cual se encarga de eliminar un elemento de la lista deacuerdo al indice del elemento.


min 9:00
Por eso es que python te permite hacer mas cosas por que ES EL HIJO DE C
 version ultimate

Almacenar varios valores en una variable: listas


Las listas vendrĂ­an siendo un Array

numbers = [1, 3, 5, 7]
oBjects = ['Holas', 3, 4.6, True]

objects[3]

Los métodos delos array vendrían siendo:

  • append() → Agrega elementos a las listas

    numbers = [1, 3, 5, 7]
    
    numbers.append(1)
    
  • pop() → Elimina un elemento de la lista pasĂĄndole el numero de la posiciĂłn de ese objeto.

    numbers = [1, 3, 5, 7]
    
    numbers.pop(1)
    # numbers = [1, 5, 7]
    

Metodos en las listas

variable.append('dato_agregado)
variable.pop('dato_retirado')
import random


def run():
    dificultad = int(input(""" ELIGE UNA DIFICULTAD
    1. DIFICIL / 3 VIDAS
    2. MEDIO / 5 VIDAS
    3. FACIL / 10 VIDAS
    """))
    if dificultad == 1:
        vida = 2
    elif dificultad == 2:
        vida = 4
    elif dificultad == 3:
        vida = 9


    numero_aleatorio = random.randint(1,100)
    numero_elegido = int(input("Elige un numero del 1 al 100: "))
    print("Te queda:", vida, "intentos")

    while numero_elegido != numero_aleatorio:

        if numero_elegido < numero_aleatorio:
            print("Busca un numero mas grande")
            vida -= 1
            numero_elegido = int(input("Elige otro numero: "))
            print("Te queda:" , vida , "intentos")

        else:
            print("Busca un numero mas pequeño")
            vida -= 1
            numero_elegido = int(input("Elige otro numero: "))
            print("Te queda:" , vida , "intentos")
        if vida == 0:
            print("Perdiste")
            break
    if numero_elegido == numero_aleatorio:
        print("Ganaste")


if __name__ == "__main__":
    run()```

Lo explico muy bien y me gusta que al final da un comentario de retro-alimentaciĂłn, muy buen maestro!!

ÂżListas == arreglos?

def listas():
    numeros = [1,2,3,4,5,6,7,8,9,10]
    numeros_palabras_booleanos = [1, 2, 'Cosa', True]
    print(numeros)
    print(numeros_palabras_booleanos)
    print(numeros[9])
    numeros.pop(9)
    print(numeros)
    palabra = input("Ingrese una palabra ")
    numeros_palabras_booleanos.append(palabra)
    print(numeros_palabras_booleanos)
    print(numeros + numeros_palabras_booleanos)
    print(numeros * 2)
    print(numeros_palabras_booleanos * 2)
    for i in numeros_palabras_booleanos:
        print(i)

Las listas son una forma de estructura de datos que nos permite guardar varios valores en una variable

#declarar lista
my_lista = []
my_lista = list()

#unir listas
my_lista = [1]
my_lista2 = [2,3,4]
my_lista3 = my_lista + my_lista2
my_lista3 # [1,2,3,4]

#partir listas
my_lista = [1,2,3]
my_lista[1:] = [2,3]

#extender una lista
my_lista = [1]
my_lista2 = [2,3,4]
my_lista.extend(my_lista2) # [1,2,3,4]

#multiplicar listas
my_lista = ['a']
my_lista2 = my_lista * 5
my_lista2 # ['a','a','a','a','a']

#eliminar ultimo elemento de la lista
my_lista = [1,2,3,4,5]
my_lista = my_lista.pop()
my_lista # [1,2,3,4]

#ordenar lista
my_lista = [2,1,5,4,3]
my_lista = my_lista.sort()
my_lista # [1,2,3,4,5]

#eliminar un elemento
my_lista = [1,2,3,4,5]
del my_lista[0]
my_lista # [2,3,4,5]

#eliminar si conocemos su valor
my_lista = [1,2,3,4,5]
my_lista.remove(3)
my_lista #[1,2,4,5]

#saber que metodos hay dentro de un elemento
my_lista = [1,2,3,4,5]
dir(my_lista) # ['__add__', '__class__', '__contains__', ...

#modificar un elemento
my_lista = [1,2,3,4,5]
my_lista[0] = 100
my_lista # [100,2,3,4,5]

#añadir un elemento al final
my_lista = [1,2,3,4,5]
my_lista.append(6)
my_lista # [1,2,3,4,5,6]

#organizar una lista 	
my_lista = [2,5,1,3,4]
my_lista.sort() #[1,2,3,4,5]


✹ Las listas en Python pueden contener elementos de distintos tipos de datos.

>>> elements = [1,"z", 2.4, False]
>>> elements[0]
<h3>Almacenar varios valores en una variable: listas</h3>
  • Estructuras de Datos: son formas que nos brindan los lenguajes de programaciĂłn para guardar varios valores en una variable, pero con diferente formato
  • Listas: son las estructuras mĂĄs intuitivas para guardar varios tipos de valores en una misma variable
    • Se declaran con corchetes, escribiendo dentro de ellos los distintos valores separados por coma, Ejemplo:

      • numeros = [1, 3, 6, 8, 9, 45, 90]
      • objetos = ['Hola', 3, 4.5, True]
    • Se puede obtener un objeto de la lista utilizando sus Ă­ndices, Ejemplo: objetos[0] >>> 'Hola'

      • Si se intenta acceder a un Ă­ndice que no existe, como objetos[4], python devuelve IndexError: list index out of range
    • Agregar un elemento: [lista].append(<elemento>)

      >>> objetos.append(1)
      >>> objetos
      ['Hola', 3, 4.5, True, 1]
      
    • Borrar un elemento: [lista].pop(<indice>)

      >>> objetos.pop(1)
      >>> objetos
      ['Hola', 4.5, True, 1]
      
    • Las listas son estructuras similares a un string; se pueden recorrer con un ciclo for o utilizar slices

      >>> for elemento in objetos:
      ...     print(elemento)
      ...
      Hola
      4.5
      True
      1
      >>> objetos[::-1]
      [1, True, 4.5, 'Hola']
      >>> objetos[1:3]
      [4.5, True]
      

ESTE ES EL JUEGO DE PIEDRA, PAPEL O TIJERA QUE HICE CON TODO LO APRENDIDO

import random
img10 = """







▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄





▄▄█▓▓▓▒▒▒▒▒▒▒▒▒▒▓▓▓▓█▄▄




▄▀▀▓▒░░░░░░░░░░░░░░░░▒▓▓▀▄



▄▀▓▒▒░░░░░░░░░░░░░░░░░░░▒▒▓▀▄


..█▓█▒░░░░░░░░░░░░░░░░░░░░░▒▓▒▓█

..▌▓▀▒░░░░░░░░░░░░░░░░░░░░░░░░▒▀▓█

..█▌▓▒▒░░░░░░░░░░░░░░░░░░░░░░░░░▒▓█

▐█▓▒░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▓█▌

█▓▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▓█
..█▐▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒█▓█

█▓█▒░░░░░░░░░░░░░░░░░░░░░░░░░░░▒█▌▓█
..█▓▓█▒░░░░▒█▄▒▒░░░░░░░░░▒▒▄█▒░░░░▒█▓▓█
..█▓█▒░▒▒▒▒░░▀▀█▄▄░░░░░▄▄█▀▀░░▒▒▒▒░▒█▓█
.█▓▌▒▒▓▓▓▓▄▄▄▒▒▒▀█░░░░█▀▒▒▒▄▄▄▓▓▓▓▒▒▐▓█
.██▌▒▓███▓█████▓▒▐▌░░▐▌▒▓████▓████▓▒▐██
..██▒▒▓███▓▓▓████▓▄░░░▄▓████▓▓▓███▓▒▒██
..█▓▒▒▓██████████▓▒░░░▒▓██████████▓▒▒▓█
..█▓▒░▒▓███████▓▓▄▀░░▀▄▓▓███████▓▒░▒▓█

.█▓▒░▒▒▓▓▓▓▄▄▄▀▒░░░░░▒▀▄▄▄▓▓▓▓▒▒░▓█


█▓▒░▒▒▒▒░░░░░░▒▒▒▒░░░░░░▒▒▒▒░▒▓█



█▓▓▒▒▒░░██░░▒▓██▓▒░░██░░▒▒▒▓▓█



▀██▓▓▓▒░░▀░▒▓████▓▒░▀░░▒▓▓▓██▀




.░▀█▓▒▒░░░▓█▓▒▒▓█▓▒░░▒▒▓█▀░




█░░██▓▓▒░░▒▒▒░▒▒▒░░▒▓▓██░░█




.█▄░░▀█▓▒░░░░░░░░░░▒▓█▀░░▄█




..█▓█░░█▓▒▒▒░░░░░▒▒▒▓█░░█▓█





.█▓█░░█▀█▓▓▓▓▓▓█▀░░█░█▓█▌





..█▓▓█░█░█░█▀▀▀█░█░▄▀░█▓█





..█▓▓█░░▀█▀█░█░█▄█▀░░█▓▓█






█▓▒▓█░░░░▀▀▀▀░░░░░█▓▓█






█▓▒▒▓█░░░░ ░░░░░░░█▓▓█






..█▓▒▓██▄█░░░▄░░▄██▓▒▓█






..█▓▒▒▓█▒█▀█▄█▀█▒█▓▒▓█






..█▓▓▒▒▓██▒▒██▒██▓▒▒▓█







.█▓▓▒▒▓▀▀███▀▀▒▒▓▓█








▀█▓▓▓▓▒▒▒▒▓▓▓▓█▀









..▀▀██▓▓▓▓██▀

"""
img8 = """
 ███████▓█████▓▓╬╬╬╬╬╬╬╬▓███▓╬╬╬╬╬╬╬▓╬╬▓█
████▓▓▓▓╬╬▓█████╬╬╬╬╬╬███▓╬╬╬╬╬╬╬╬╬╬╬╬╬█
███▓▓▓▓╬╬╬╬╬╬▓██╬╬╬╬╬╬▓▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬▓█
████▓▓▓╬╬╬╬╬╬╬▓█▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬▓█
███▓█▓███████▓▓███▓╬╬╬╬╬╬▓███████▓╬╬╬╬▓█
████████████████▓█▓╬╬╬╬╬▓▓▓▓▓▓▓▓╬╬╬╬╬╬╬█
███▓▓▓▓▓▓▓▓▓▓▓▓▓▓█▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬▓█
████▓▓▓▓▓▓▓▓▓▓▓▓▓█▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬▓█
███▓█▓▓▓▓▓▓▓▓▓▓▓▓▓▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬▓█
█████▓▓▓▓▓▓▓▓█▓▓▓█▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬▓█
█████▓▓▓▓▓▓▓██▓▓▓█▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██
█████▓▓▓▓▓████▓▓▓█▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██
████▓█▓▓▓▓██▓▓▓▓██╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬██
████▓▓███▓▓▓▓▓▓▓██▓╬╬╬╬╬╬╬╬╬╬╬╬█▓╬▓╬╬▓██
█████▓███▓▓▓▓▓▓▓▓████▓▓╬╬╬╬╬╬╬█▓╬╬╬╬╬▓██
█████▓▓█▓███▓▓▓████╬▓█▓▓╬╬╬▓▓█▓╬╬╬╬╬╬███
██████▓██▓███████▓╬╬╬▓▓╬▓▓██▓╬╬╬╬╬╬╬▓███
███████▓██▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╬╬╬╬╬╬╬╬╬╬╬████
███████▓▓██▓▓▓▓▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬▓████
████████▓▓▓█████▓▓╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬▓█████
█████████▓▓▓█▓▓▓▓▓███▓╬╬╬╬╬╬╬╬╬╬╬▓██████
██████████▓▓▓█▓▓▓▓▓██╬╬╬╬╬╬╬╬╬╬╬▓███████
███████████▓▓█▓▓▓▓███▓╬╬╬╬╬╬╬╬╬▓████████
██████████████▓▓▓███▓▓╬╬╬╬╬╬╬╬██████████
███████████████▓▓▓██▓▓╬╬╬╬╬╬▓███████████

"""
img7 = """
───────────────────────────────
──────────▄▄▄▄▄▄▄▄▄▄▄──────────
─────▄▄▀▀▀▀──────────▀▀▄▄──────
───▄▀───────────────────▀▀▄────
──█────────────────────────█───
─█─────────────────────▄▀▀▀▀▀█▄
█▀────────────────────█────▄███
█─────────────────────█────▀███
█─────▄▀▀██▀▄─────────█───────█
█────█──████─█─────────▀▄▄▄▄▄█─
█────█──▀██▀─█───────────────█─
█────█───────█──────────────▄▀─
█────▀▄─────▄▀──▄▄▄▄▄▄▄▄▄───█──
█──────▀▀▀▀▀────█─█─█─█─█──▄▀──
─█──────────────▀▄█▄█▄█▀──▄▀───
──█──────────────────────▄▀────
───▀▀▀▄──────────▄▄▄▄▄▄▀▀──────
────▄▀─────────▀▀──▄▀──────────
──▄▀───────────────█───────────
─▄▀────────────────█──▄▀▀▀█▀▀▄─
─█────█──█▀▀▀▄─────█▀▀────█──█─
▄█────▀▀▀────█─────█────▀▀───█─
█▀▄──────────█─────█▄────────█─
█──▀▀▀▀▀█▄▄▄▄▀─────▀█▀▀▀▄▄▄▄▀──
█───────────────────▀▄─────────

"""
img6 = """
──────────────────────────────────
────────────██████████────────────
────────███████████████████───────
──────███████████████████████─────
────██████████████████████████────
───█████████████▀──────────▀███───
──█████████████──────────────███──
─████████████────────────────████─
─██████████───────────────────███─
██████████▀───────────────────████
████████▀─────────────────────████
██████▀────────────────────────███
█████──▄▀▀▀▀▀▀▀▄────▄▀▀▀▀▀▀▀▄──███
█████────▄▄▄▄▄────────▄▄▄▄▄────███
█████──▄▀───▄██▄────▄▀───▄██▄──███
█████──▀▄───▀▀█▀────▀▄───▀▀█▀──███
█▀──█────▀▀▀▀▀────────▀▀▀▀▀────███
█───█──────────────────────────█─█
█────────────────────▄───────────█
█───────────▄▀────────▀▄─────────█
▀█─▄█───────▀▄─▀██──██───────────█
─▀██────────────────────────────██
──██────▄▀▀──────█─█──────▀▀▄──██─
───█──────█▀▄────▀─▀────▄▀█────█──
───█──────▀──▀▀▄▄▄▄▄▄▄▀▀──▀────█──
───▀█─────────────────────────█▀──
────▀█───────────────────────█▀───
─────▀█─────────────────────█▀────
──────▀█───────────────────█▀─────
───────▀█─────────────────█▀──────
────────▀█───▄───────▄───█▀───────
─────────▀█▄──▀▄▄▄▄▄▀──▄█▀────────
───────────▀▀█▄▄▄▄▄▄▄█▀▀──────────
────────────────███───────────────
──────────────███████─────────────
─────────────██─███─██────────────
────────────██──███──██───────────
───────────██───███───██──────────
──────────██────███────██─────────
"""
img5 = """
─▄▀▀▀▀▄─█──█────▄▀▀█─▄▀▀▀▀▄─█▀▀▄
─█────█─█──█────█────█────█─█──█
─█────█─█▀▀█────█─▄▄─█────█─█──█
─▀▄▄▄▄▀─█──█────▀▄▄█─▀▄▄▄▄▀─█▄▄▀

─────────▄██████▀▀▀▀▀▀▄
─────▄█████████▄───────▀▀▄▄
──▄█████████████───────────▀▀▄
▄██████████████─▄▀───▀▄─▀▄▄▄──▀▄
███████████████──▄▀─▀▄▄▄▄▄▄────█
█████████████████▀█──▄█▄▄▄──────█
███████████──█▀█──▀▄─█─█─█───────█
████████████████───▀█─▀██▄▄──────█
█████████████████──▄─▀█▄─────▄───█
█████████████████▀███▀▀─▀▄────█──█
████████████████──────────█──▄▀──█
████████████████▄▀▀▀▀▀▀▄──█──────█
████████████████▀▀▀▀▀▀▀▄──█──────█
▀████████████████▀▀▀▀▀▀──────────█
──███████████████▀▀─────█──────▄▀
──▀█████████████────────█────▄▀
────▀████████████▄───▄▄█▀─▄█▀
──────▀████████████▀▀▀──▄███
──────████████████████████─█
─────████████████████████──█
────████████████████████───█
────██████████████████─────█
────██████████████████─────█
────██████████████████─────█
────██████████████████─────█
────██████████████████▄▄▄▄▄█

─────────────█─────█─█──█─█───█
─────────────█─────█─█──█─▀█─█▀
─────────────█─▄█▄─█─█▀▀█──▀█▀
─────────────██▀─▀██─█──█───█

"""
img4 = """
â–ˆâ–€â–€ă…€ █ ă…€ â–ˆă…€ â–ˆă…€ â–ˆă…€â–€â–€â–ˆâ–€â–€ă…€ă…€â–ˆă…€ â–ˆă…€ █▀▀▄  
â–€â–€â–ˆă…€â–ˆâ–€â–€â–ˆă…€ â–ˆă…€ â–ˆă…€ ă…€ â–ˆă…€ă…€ă…€ █ ă…€ â–ˆă…€ █ ă…€ █  
▀▀▀ㅀ▀ ㅀ▀ㅀ ▀▀▀▀ㅀㅀ ▀ㅀㅀ ă…€ ▀▀▀▀ㅀ █▀▀  
ă…€ă…€ă…€ă…€ă…€ă…€â–„â–€â–€â–„ă…€â–ˆâ–€â–€â–„ă…€ █▀▀▄
ă…€ă…€ă…€ă…€ă…€ă…€â–ˆâ–„â–„â–ˆă…€â–ˆ ă…€ â–ˆă…€â–ˆ ă…€ █
ă…€ă…€ă…€ă…€ă…€ă…€â–ˆă…€ â–ˆă…€â–ˆ ă…€ â–ˆă…€â–ˆâ–„â–„â–€

─────███────██
──────████───███
────────████──███
─────────████─█████
████████──█████████
████████████████████
████████████████████
█████████████████████
█████████████████████
█████████████████████
██─────██████████████
███────────█████████
█──█───────────████
█──────────────██
██──────────────█────────▄███████▄
██───███▄▄──▄▄███──────▄██$█████$██▄
██──█▀───▀███────█───▄██$█████████$██▄
██──█───█──██───█─█──█$█████████████$█
██──█──────██─────█──█████████████████
██──██────██▀█───█─────██████████████
─█───██████──▀████───────███████████
──────────────────█───────█████████
─────────────▀▀████──────███████████
────────────────█▀──────██───████▀─▀█
────────────────▀█──────█─────▀█▀───█
──▄▄▄▄▄▄▄────────██────█───████▀───██
─█████████████────▀█──█───███▀──▄▄██
─█▀██▀██▀████▀█████▀──█───██████▀─▀█
─█────────█▄─────────██───████▀───██
─██▄████▄──██────────██───██──▄▄▄██
──██▄▄▄▄▄██▀─────────██──█████▀───█
─────────███────────███████▄────███
────────███████─────█████████████
───────▄██████████████████████
████████─██████████████████
─────────██████████████
────────███████████
───────█████
──────████
─────████

ă…€ ă…€ ă…€ ă…€ ă…€ â–€â–€â–ˆâ–€â–€ă…€â–ˆâ–€â–€â–ˆă…€â–ˆă…€â–„â–ˆă…€â–ˆâ–€â–€
ㅀㅀ ㅀㅀ ă…€ ă…€ă…€â–ˆ ă…€ă…€â–ˆâ–„â–„â–ˆă…€â–ˆâ–€â–€â–„ ă…€â–ˆâ–€â–€
ă…€ ă…€ ă…€ ă…€ ă…€ ă…€ ▀ㅀ ㅀ▀ㅀ ▀ㅀ▀ㅀㅀ▀ㅀ▀▀▀

â–ˆâ–€â–„â–€â–ˆă…€â–ˆ ă…€ â–ˆă…€ ă…€â–ˆâ–€â–„â–€â–ˆ ▄▀▀▄ █▀▀▄ █▀▀ █ ă…€ â–ˆă…€â–ˆ
â–ˆâ”€â–€â”€â–ˆă…€â–ˆâ–„â–„â–ˆă…€ă…€ █─▀─█ █ ă…€ █ █ ă…€ █ █▀▀ â–ˆâ–„â–„â–ˆă…€â–ˆ
â–ˆă…€ă…€ â–ˆă…€â–„â–„â–„â–ˆă…€ ă…€â–ˆă…€ă…€â–ˆ ─▀▀ ─ ▀ ă…€ ▀ ▀▀▀ â–„â–„â–„â–ˆă…€â–„

"""
img3 = """
░░█▀░░░░░░░░░░░▀▀███████░░░░
░░█▌░░░░░░░░░░░░░░░▀██████░░░
░█▌░░░░░░░░░░░░░░░░███████▌░░
░█░░░░░░░░░░░░░░░░░████████░░
▐▌░░░░░░░░░░░░░░░░░▀██████▌░░
░▌▄███▌░░░░▀████▄░░░░▀████▌░░
▐▀▀▄█▄░▌░░░▄██▄▄▄▀░░░░████▄▄░
▐░▀░░═▐░░░░░░══░░▀░░░░▐▀░▄▀▌▌
▐░░░░░▌░░░░░░░░░░░░░░░▀░▀░░▌▌
▐░░░▄▀░░░▀░▌░░░░░░░░░░░░▌█░▌▌
░▌░░▀▀▄▄▀▀▄▌▌░░░░░░░░░░▐░▀▐▐░
░▌░░▌░▄▄▄▄░░░▌░░░░░░░░▐░░▀▐░░
░█░▐▄██████▄░▐░░░░░░░░█▀▄▄▀░░
░▐░▌▌░░░░░░▀▀▄▐░░░░░░█▌░░░░░░
░░█░░▄▀▀▀▀▄░▄═╝▄░░░▄▀░▌░░░░░░
░░░▌▐░░░░░░▌░▀▀░░▄▀░░▐░░░░░░░
░░░▀▄░░░░░░░░░▄▀▀░░░░█░░░░░░░
░░░▄█▄▄▄▄▄▄▄▀▀░░░░░░░▌▌░░░░░░
░░▄▀▌▀▌░░░░░░░░░░░░░▄▀▀▄░░░░░
▄▀░░▌░▀▄░░░░░░░░░░▄▀░░▌░▀▄░░░
░░░░▌█▄▄▀▄░░░░░░▄▀░░░░▌░░░▌▄▄
░░░▄▐██████▄▄░▄▀░░▄▄▄▄▌░░░░▄░
░░▄▌████████▄▄▄███████▌░░░░░▄
░▄▀░██████████████████▌▀▄░░░░
▀░░░█████▀▀░░░▀███████░░░▀▄░░
░░░░▐█▀░░░▐░░░░░▀████▌░░░░▀▄░
░░░░░░▌░░░▐░░░░▐░░▀▀█░░░░░░░▀
░░░░░░▐░░░░▌░░░▐░░░░░▌░░░░░░░
░╔╗║░╔═╗░═╩═░░░░░╔╗░░╔═╗░╩═╗░
░║║║░║░║░░║░░░░░░╠╩╗░╠═╣░║░║░
░║╚╝░╚═╝░░║░░░░░░╚═╝░║░║░╩═╝░

"""
img2 = """
░░░░░░▄▄▄▄▀▀▀▀▀▀▀▀▄▄▄▄▄▄▄
░░░░░█░░░░░░░░░░░░░░░░░░▀▀▄
░░░░█░░░░░░░░░░░░░░░░░░░░░░█
░░░█░░░░░░▄██▀▄▄░░░░░▄▄▄░░░░█
░▄▀░▄▄▄░░█▀▀▀▀▄▄█░░░██▄▄█░░░░█
█░░█░▄░▀▄▄▄▀░░░░░░░░█░░░░░░░░░█
█░░█░█▀▄▄░░░░░█▀░░░░▀▄░░▄▀▀▀▄░█
░█░▀▄░█▄░█▀▄▄░▀░▀▀░▄▄▀░░░░█░░█
░░█░░░▀▄▀█▄▄░█▀▀▀▄▄▄▄▀▀█▀██░█
░░░█░░░░██░░▀█▄▄▄█▄▄█▄▄██▄░░█
░░░░█░░░░▀▀▄░█░░░█░█▀█▀█▀██░█
░░░░░▀▄░░░░░▀▀▄▄▄█▄█▄█▄█▄▀░░█
░░░░░░░▀▄▄░░░░░░░░░░░░░░░░░░░█
░░▐▌░█░░░░▀▀▄▄░░░░░░░░░░░░░░░█
░░░█▐▌░░░░░░█░▀▄▄▄▄▄░░░░░░░░█
░░███░░░░░▄▄█░▄▄░██▄▄▄▄▄▄▄▄▀
░▐████░░▄▀█▀█▄▄▄▄▄█▀▄▀▄
░░█░░▌░█░░░▀▄░█▀█░▄▀░░░█
░░█░░▌░█░░█░░█░░░█░░█░░█
░░█░░▀▀░░██░░█░░░█░░█░░█
░░░▀▀▄▄▀▀░█░░░▀▄▀▀▀▀█░░█
░░░░░░░░░░█░░░░▄░░▄██▄▄▀
░░░░░░░░░░█░░░░▄░░████
░░░░░░░░░░█▄░░▄▄▄░░▄█
░░░░░░░░░░░█▀▀░▄░▀▀█
░░░░░░░░░░░█░░░█░░░█
░░░░░░░░░░░█░░░▐░░░█
░░░░░░░░░░░█░░░▐░░░█
░░░░░░░░░░░█░░░▐░░░█
░░░░░░░░░░░█░░░▐░░░█
░░░░░░░░░░░█░░░▐░░░█
░░░░░░░░░░░█▄▄▄▐▄▄▄█
░░░░░░░▄▄▄▄▀▄▄▀█▀▄▄▀▄▄▄▄
░░░░░▄▀▄░▄░▄░░░█░░░▄░▄░▄▀▄
░░░░░█▄▄▄▄▄▄▄▄▄▀▄▄▄▄▄▄▄▄▄█

"""
img1 = """
░░░░░░░░░░░░░░░░░░░▒▓▓█████████████▓▓▒░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░▒████▓▓▒▒░▒▒▒░▒▒▒▒▒▒▓▓████▓▒░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░▒███▓░░░░░░░░░░░░░░░░░░░░░░▒███████▓▓▒░░░░░░░░░░░
░░░░░░░░░▒██▓░░░░▒▒███▓▓▒░░░░░░░░░░░░░▓▓▒▒▒▒▒▓██████▓░░░░░░░
░░░░░░░▒██▓░░░▓███▓▒░░░░░░░░▒▒▒▒▒▒▒▒▒▒░░░░░░▒▓▓███▓████▒▒░░░
░░░░░░██▓░░▒▓██▓░░▒▓██████▓░░░░░░░▒░░░░░░▒██▓▒░░░▓███▒▓▒░░░░
░░░░░██░░▓███▒░░▒██▒░░░░▒▒██▓░░░░░░░░░░░██▒░░░░▒████▒█░░░░░░
░░░░██░▒▓▒▓▓░░░██░░░░░░░░░░░█▓░░░░░░░░░██░░░░░░▒███░░█▒░░░░░
░░░▓█░░░░░░░░░██░░░░░░░░░░░░▓█░░░░░░░░██░░░░░░░░░░░░░█▒░░░░░
░░░█▓░░░░░░░░░█▒░░████░░░░░░░█▒░░░░░░░██░░░░░░░░░░░░███░░░░░
░░▒█░░░░░░░▒▓▒█▓░▓████▓░░░░░▒█░░░░░░░░▒█▒░░░░░░░░░░██░█▒░░░░
░░██░░░░░▒▓▒▓▒██▒▒▓▓▓░░░░░░░██░░░░░░░░░▒████▓███████▓░█▒░░░░
░░█▓░░░░░▒░░░▒░▒██▓▒░░░░░▒██▓░░░░░░░░░░░░░░██▓░░░░░░▒██▓░░░░
░░█░░░░░░░░░▓▒░░░░▒▓██████▓░░░░░░░░░░░░░░▒██░░░▓█▓▓▒░░░██░░░
░▒█░░░░░░░░░░░░░░░░░░░░░░░░░░▓▒▓▒▒▒▒▒▓▓▓▓██░░▓█▓░▒▒██▒░░██░░
░▓█░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▓▓▒░░██░░██▓░▒░▒░██░░▒█░░
░██░░░░░░░░░░░░░░░░░░░░░░░▒▓▒▒▒▒▒▒▒▒░░░██░░▓█░█▓░█▒█▓█▓░░█░░
░██░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒░▒▒░░▓█▓░░██░█▒▒█▒█▒▓█░░█░░
░██░░░░░░░░░░░░░░░░░░░░░░░░▒░░░░░░░░░░▓█░░░█▒░░░░▒▒░░▒█░▓█░░
░▒█░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒░░█▒░░█▒░░░░░░░░▓█░█▓░░
░░█▓░▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓█░░█▒░░░░░░░░█░▒█░░░
░░▓█░░▒░░▒▒░░▒░░░░░░░░░░░░░░░░░░░░░░░░░░█░░█▒░░░░░░░█▓░█▓░░░
░░░█▒░░▒░░▒░░▒▒░░░░░░░░░░░░░░░░░░░░░░░░░█░░█▒░░░░░░▓█░░█░░░░
░░░██░░░▒░▒░░░▒▒░░░░░░░░░░░░░░░░░░░░░░░░█░░█▒░░░░░░██░░█░░░░
░░░░█▓░░░▒░▒░░░░▒▒░░░░░▒▒▒▒▒▒░░░░░░░░░░▒█░▒█░░░░░░░█▒░░█▓░░░
░░░░▓█░░░░▒▒░░░░░▒▒░░░░░░▒▒▒▓▓▓▒░░░░░░░██░██░░░░░░░██░░▓█░░░
░░░░░██░░░▒░▒░░░░░▒░░░░░░░░▒░▒▒▓█▒░░░░▒█░░█▓▒▓▓▓▒░░▓█░░░█▒░░
░░░░░▒█▒░░░▒▒▒░░░░▒░░░░░░░░░░▒▒▒░▒▓░░░██░▒█░░░░▒▓▓░░██░░█▒░░
░░░░░░▒█▒░░░▒░▒░░░▒░░░░░░▒▒▒░░░░▒▒░░░▒█░░██░░░░░░░█░▒█░░█▒░░
░░░░░░░▓█░░░▒░▒░░░░▒▒░░░░▓▒▒▓▓▓▒░░▓▒░██░░██▒▒▒▒▓▒▓▓███░░█▒░░
░░░░░░░░██░░░▒░▒░░░░░▒▒░░░░░░░░▓█▓░░░█▓░░██░▓█░█░█░░█▒░░█▒░░
░░░░░░░░░██░░░░▒▒░░░░░░▒▒░░░░░░░░▒█▓░█▓░░▓█▒▒█▒█░█▒██░░▒█░░░
░░░░░░░░░░██▒░░░░▒░░░▒░░░▒▒░░░░░░░░▒▓██░░░██░░░░▒▒██░░░██░░░
░░░░░░░░░░░▓██░░░░░░░░▒▒░░░▒░░░░░░░░░▓█░░░░▓███▓▓██░░░██░░░░
░░░░░░░░░░░░░▓██▒░░░░░░▒▒▒▒▒░░░░░░░░░░██░░░░░░▒▒▒░░░░██░░░░░
░░░░░░░░░░░░░░░▓███▒░░░░░░░▒▒▒▒▒▒▒▒░░░░▓██▒░░░░░░░▒███░░░░░░
░░░░░░░░░░░░░░░░░▒▓███▓▒░░░░░░░▒░░▒▒▒▒░░░▒██▓██████▓░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░▒████▓▒▒░░░░░░░░░░░░░░░▓██▒░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░▒▓████▓░░░░░░░▓█████▒░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒█████████▒░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒░░░░░░░░░░░░░░░░░░░░░░░

"""

def eleccion(opcion):
    eleccion_de_maquina = random.randint(1, 3)
    if (opcion == eleccion_de_maquina):
        print('QUE MALA SUERTE ES UN EMPATE :(')
        print(img3)
        return True
    elif (opcion == 1 and eleccion_de_maquina == 2):
        print('OHHH!! PERDISTE. ')
        print(img1)
        return True
    elif (opcion == 1 and eleccion_de_maquina == 3):
        print('GANASTE!!! ENHORABUENA.')
        print(img2)
        return True
    
    elif(opcion == 2 and eleccion_de_maquina == 1):
        print('GANASTE!!! ENHORABUENA.')
        print(img4)
        return True
    elif(opcion == 2 and eleccion_de_maquina == 3):
        print('OHHH!! PERDISTE. ')
        print(img5)
        return True
    
    elif(opcion == 3 and eleccion_de_maquina == 1):
        print('OHHH!! PERDISTE. ')
        print(img6)
        return True
    elif(opcion == 3 and eleccion_de_maquina == 2):
        print('GANASTE!!! ENHORABUENA. ')
        print(img7)
        return True
        

def run():
    print("""BIENVENIDO AL JUEGO DE PIEDRA, PAPEL O TIJERA, NOSOTROS SOMOS HACKERS :))""")
    print(img8)
    resultado = eleccion(int(input("""SELECCIONA CON QUE QUIERES JUGAR:
    1 Piedra
    2 Papel
    3 Tijera
    """)))
    
    while resultado == True:
        volver_a_jugar = input('Quieres volver a jugar? Y/N: ').capitalize()
        if volver_a_jugar == 'Y':
            resultado = eleccion(int(input("""SELECCIONA CON QUE QUIERES JUGAR:
            1 Piedra
            2 Papel
            3 Tijera
            """)))

        elif volver_a_jugar == 'N':
            print('ME LLEGAS AL PINCHO, YO QUERIA JUGAR')
            print(img10)
            resultado = False
    

if __name__ == '__main__':
    run()

Con el conocimiento adquirido hasta ahora hice un CRUD (Crear, Leer/Mostrar, Editar y Eliminar registros).

Les dejo el codigo, cualquier modificacion es más que bien recibida 😃:

import os, time

estudiantes = []


def opcion(mensaje, funcion):
    opt = input(f"{mensaje} (s/n): ")
    if opt == "s":
        eval(funcion)
    else:
        run()

def agregar():
    os.system("clear")
    estudiante_nuevo = input("Cual es el nombre del estudiante?: ")
    estudiantes.append(estudiante_nuevo)
    print(f"Estudiante {estudiante_nuevo} agregado de forma exitosa!")

    opcion("Quiere registrar un nuevo estudiante?", "agregar()")


def editar():
    os.system("clear")
    print("***************** Opcion elegida: Editar estudiante **********************")
    print("Lista de estudiantes registrados: ")
    print("")
    n = -1
    for estudiante in estudiantes:
        n += 1
        print(n, estudiante)
    print("")
    n_estudiante = int(input("Ingresa el numero que acompaña al estudiante a modificar: "))
    estudiantes.pop(n_estudiante)
    modificacion = input("Ingrese la modificacion del nombre que desea guardar: ")
    estudiantes.insert(n_estudiante,modificacion)
    os.system("clear")
    if modificacion in estudiantes:
        print("-----------------------------------------")
        print("Modificacion realizada de forma exitosa!")
        print(f"Nombre actual: {estudiantes[n_estudiante]}")
        print("-----------------------------------------")
        opcion("Quiere editar otro estudiante?", "editar()")

            
def eliminar():
    os.system("clear")
    print("***************** Opcion elegida: Editar estudiante **********************")
    print("Lista de estudiantes registrados: ")
    print("")
    n = -1
    for estudiante in estudiantes:
        n += 1
        print(n, estudiante)
    print("")
    n_estudiante = int(input("Ingresa el numero que acompaña al estudiante a eliminar: "))
    opt = input("EstĂĄ seguro de eliminar al estudiante? (s/n)")
    if opt == "s":
        estudiantes.pop(n_estudiante)
        print("-----------------------------------------")
        print("Estudiante eliminado de forma exitosa!")
        print("-----------------------------------------")
        time.sleep(3)
    elif opt == "n":
        run()
    opcion("Quiere eliminar otro estudiante?", "eliminar()")


def ver():
    os.system("clear")
    print("Lista de estudiantes registrados: ")
    print("----------------------------------")
    n = -1
    for estudiante in estudiantes:
        n += 1
        print(n,"-", estudiante)
    print("----------------------------------")
    time.sleep(3)
    input("Presione enter para volver al menu")
    run()


def run():
    os.system("clear")
    print("Bienvenido al colegio Platzinauta. \nEliga una opcion:")
    opt = int(input("1- Agregar estudiante \n2- Editar estudiante\n3- Eliminar estudiante \n4- Ver estudiantes\n5- Salir\nSeleccione su opcion: "))
    if opt == 1:
        agregar()
    elif opt == 2:
        editar()
    elif opt == 3:
        eliminar()
    elif opt == 4:
        ver()
    elif opt == 5:
        exit()
    else:
        input("Opcion no disponible, presione enter y seleccione una opcion existente")
        run()


if __name__ == "__main__":
    run()```

LISTAS: Pertenece a un conjunto llamada estructuras de datos, que son formas que nos brindan los lenguajes de programaciĂłn para guardar varios valores en una misma variable pero con diferente formato.

Apuntes de la clase en Typora 😃
Les recomiendo Typora si desean practicar Markdown y hacer apuntes a la vez. Saludos

Una lista equivale a un Array en lenguajes como Javascript o C.
La diferencia principal es que una lista puede contener elementos de diferentes tipos, mientras que un array debe tener todos los elementos del mismo tipo.

La clase 28 y la 29 deberian estar al reves, me parece que ocurrio un error podria confundir mucho a gente nueva

Las listas son un tipo de variable que nos brindan los lenguajes de programaciĂłn que sirven para guardar varios valores en un mismo lugar.
La sintaxis de una lista es la siguiente, ejemplo:
numeros = [1, 3, 29, 32, 34]
En Python, las listas pueden contener datos de distintos tipos a la vez, por ejemplo:
datos_personales = [“Facundo”, 22, “Argentina”]
Para acceder a uno de los valores hay que acceder mediante el Ă­ndice que ocupa dentro, recordemos que el Ă­ndice empieza en cero, por ejemplo, queremos saber el paĂ­s, tendrĂ­amos que hacer lo siguiente:
datos_personales[2]
Resultado:
“Argentina”
Una lista es modificable, es decir, podemos añadir y borrar elementos. Para ello hay que ver las listas como paquetes o módulos(que lo vimos en el punto anterior) los cuales tienen funciones. Ejemplos de funciones:
append(), sirve para agregar un valor al final de la lista.
pop(), sirve para borrar elementos, hay que pasarle el Ă­ndice del elemento a borrar, en caso de no pasarle ninguno borra el Ășltimo.
count(), este método recibe un elemento como argumento, y cuenta la cantidad de veces que aparece en la lista.
index(), este método recibe un elemento como argumento, y devuelve el índice de su primera aparición en la lista.
insert(), este método inserta el elemento x en la lista, en el índice i.
remove(), este método recibe como argumento un elemento, y borra su primera aparición en la lista.
reverse(), este método invierte el orden de los elementos de una lista.
sort(), este método ordena los elementos de una lista.
Para recorrer de uno en uno los valores de una lista podemos utilizar el for, ejemplo:
for elementos in datos_personales:
print(elementos)
Resultado:
“Facundo”
22
Soltero

Hola 😃 . Les adjunto mis apuntes de clase.

# variable es una especie de caja donde se guardan objetos
# las listas pertenecen a la estructura de datos para guardar varios valores en una variable
numeros = [1,3,6,8,9,45,90]
objetos = ["Hola",3,4,5]
# listas pueden tener distintos tipos de datos
objetos [1] 
# sale el numero 3
# agregar objetos a las listas y eliminar valores de las listas
# metodo son funciones especiales ligadas a un tipo de dato especial
objetos.append (false)
objetos.pop(1)
for elemento in objetos: 
    print(elemento)
objetos [1:3]

Las listas son objetos y al ser objetos, tienen métodos asociados que sirven para distintas cosas, por ejemplo, el método append() agrega un elemento a la lista, el método pop(n) elimina el objeto que estå en el índice o posición n de la lista. (Recordar que el primer elemento estå en la posición 0)

Estructuras de datos

Son formas que nos brindan los lenguajes de programaciĂłn para guardar varias valores en una misma variable.

Listas

Son las estructuras de datos mĂĄs intuitivas

  • append(): agrega un objeto al final de la lista
  • pop(): borra un elemento de la lista y devuelve el elemento borrado

LISTAS
Son utilizadas para guardar varios datos en una misma variable sin importar el tipo de dato. Se utilizan los [ ] para definirlas.

  • Para agregar datos utilizo el mĂ©todo .append(dato nuevo)
  • Para eliminar un dato utilizo el mĂ©todo .pop(indice) y le indico el Ă­ndice o la posiciĂłn del dato a eliminar.
  • Para recorrer una lista utilizo el ciclo for:
    for elemento in objetos:
    print(elemento)

Notas 📒

✏ Listas

Pertenecen a un conjunto de estructura de datos que los lenguajes de programaciĂłn poseen.

En Python con las listas se puede:

  • Almacenar muchos valores de diferentes tipos de datos
  • Son mutables, o sea se puede modificar sus elementos asĂ­ como agregar o eliminar

✏ Operaciones con listas

Listas de ejemplo
a = [0,1,2,3]
b = [”cuatro”,”cinco”]

Acceder a un elemento

b[1] → “cinco”

a[2] → 2

Extraer una parte de la lista

a[2:] → [2,3]

Invertir lista

a[::-1] → [3,2,1,0]

Agregar un elemento

b.append(6) → [”cuatro”,”cinco”,6]

Eliminar un elemento

b.pop(2) → [”cuatro”,”cinco”]

Unir listas

a+b → [0,1,2,3,”cuatro”,”cinco”]

b+a → [”cuatro”,”cinco”,0,1,2,3]

a+a → [0,1,2,3,0,1,2,3]

Multiplicar listas

a*3 → [0,1,2,3,0,1,2,3,0,1,2,3]

Recorrer lista

for elemento in a:
print(elemento)

Las listas se pueden modificar, agregar o quitar elementos, pero en el video faltó decir que también se pueden modificar, por ejemplo la lista numeros = [1,2,3], si se quiere modificar el 1 y poner en su lugar un 6, sería numeros[0]=6.

lista[posiciĂłn del elemento a modificar] = nuevo valor del elemento

Almacenar varios valores en una variables: listas
es como caja que guarda varias variables de diferente tipo. En el lenguaje C no permite tener diferentes variables en una listas
numeros = [1, 3, 6, 8, 9, 45, 90]
objetos = [ ‘hola’ , 3, 4.5, True]
objetos[1] Acceder a un elemento de una lista
objetos.append(False) Agregar un elemento
objetos.pop(1) Borra un elemento de la lista
para recorrer la lista con un ciclo for
for elemento in objetos:

 print(elemento)


Se pueden utilizar lo slices en las listas
objetos[::-1] La lista al revés
objetos[1:3] partiendo de un elemento(1) al (3)

Le agregué tres líneas sencillas para contar intentos para ganar:

import random

def run(numero_elegido):
    numero_elegido =  numero_elegido
    numero_aleatorio = random.randint(1, 100)
    contador = 1

    while numero_elegido != numero_aleatorio and contador < 5:
        if numero_elegido < numero_aleatorio:
          print("") 
          print("Vas en el intento " + str(contador))
          print("Escoge un nĂșmero mĂĄs grande")
          contador += 1
          
        else:
            print("Vas en el intento " + str(contador))
            print("Escoge un nĂșmero mĂĄs pequeño")
            contador += 1

        numero_elegido = int(input("Elige otro nĂșmero: "))

    print("ÂĄGanaste!")          


if __name__ == "__main__":
    bienvenida = """Tienes 5 intentos para ganar """
    numero_elegido = int(input("Ingresa el nĂșmero: "))
    run(numero_elegido)

😃

Es algo sencillo en cuanto a funciones bĂĄsicas, habrĂĄ que ver que tanto aumenta la dificultad en elementos mĂĄs complejos o robustos.
La verdad cada que conozco mĂĄs de Python, ÂĄmĂĄs me gusta!

❀

He hecho un pequeño programa para sumar todos los nĂșmeros entre 1 y x (elegido por el usuario) usando listas:

def run():
    a = []
    result = 0
    print("--suma de conjuntos--")
    leng = int(input("Hasta quĂ© nĂșmero quieres sumar? ")) 

    for i in range(1, leng + 1):
        a.append(i)

    for i in a:
        result = i + result

    print("El resultado de sumar todos los nĂșmeros entre 1 y", leng, "es", result)


if __name__ == "__main__":
    run()

Se que se podría omitir el segundo bucle for, lo hice por usar una lista 😃

Las listas en python son iguales a los arrayas en java con algunas diferencias que nos dan algunos lenguajes, ya que en python puedes tener elementos de diferentes tipos por ejemplo tener un booleano y un entero pero en C no se permite todos los elementos deben ser del mismo tipo.

En otros lenguajes de programaciĂłn a las variables que en Python se conocen como listas, se las llama arrays o matrices. Sirven para lo mismo, guardar mĂșltiples valores.

numeros = [1,3,6,8,1,9,45,90]
# imprime la posicion 2
print(numeros[2]) 

# agregar elementos a una lista
numeros.append(10) 
print(numeros)

# borrar elementos de una lista
numeros.pop(1) 
print(numeros)

# recorrer cada elemento
for i in numeros: 
    print(i)

# slice de la posicion 1 al 3
print(numeros[1:3]) 

# sentido inverso
print(numeros[::-1]) 

# cantidad de veces que aparece en la lista
print(numeros.count(1))

# limpiar una lista
numeros.clear()
print(numeros)


Las listas en Python son un contenedor que se usa para almacenar conjuntos de elementos relacionados del mismo o de distinto tipo.

#para hacer una lista
lista= (1, 2, 3, 4, 5)
#para agregar elementos a la lista
lista.append(6)
#para borrar elementos en la lista
lista.pop(2)

#para separa los elementos
for elemento in lista:
	print (elemento)

Comparto en código algunas operaciones que ya anteriormente compartió otro compañero como comentario.

def main():
    a = [1,2]
    b = [9,3,100,52,7,82,1111,93]
    c = [2,5]
    

    # suma: concatena 2 o mas listas
    suma = a + b
    print("suma: ")
    print(suma)
    # multipliciones: repite la misma lista
    multiplicacion = a*2
    print("multiplicacion: ")
    print(multiplicacion)
    # añadir elemento
    c.append(4)
    print("añadir elemento: ")
    print(c)
    # eliminar elemento: pop elimina con respecto al indice
    c.pop(1)
    print("eliminar respecto indice: ")
    print(c)
    # eliminar elemento al final de la lista
    c.pop()
    print("eliminar del final lista: ")
    print(c)
    # ordenar lista de menor a mayor
    b.sort()
    print("orden de men a may: ")
    print(b)
    # eliminar elementos de lista. elimina el elemento de la lista dado su indice
    del b[1]
    print("eliminar dado indice: ")
    print(b)
    # eliminar elemento de la lista. elimina el elemento de la lista dado su valor
    b.remove(100)
    print("elimar de lista dado valor: ")
    print(b)
    # creacion de listas en un rango determinado
    d = (list(range(0,10,2)))
    print("creacion lista rango determinado: ")
    print(d)
    # devuelve el valor del tamaño de la lista
    tam = len(d)
    print("tamaño de la lista: ")
    print(tam)


if __name__ == "__main__":
    main()

También podemo eliminar un eemento de una lista de la siguiente manera::

numeros = [1, 2, 3,4]
del numeros[1]
numeros 
#De esta manera numeros serĂĄ [1,3,4]

Y si queremos agregar en una posiciĂłn indicada

numeros.insert(1,3)
#Se agregarĂĄ en el indice 1 un 3

Mis apuntes:

Listas: conjunto de estructura de datos, la cual nos permite guardar dos o mas variables con diferentes tipo de datos.
sintaxis:

nombre_lista = [var1,var2,var3, ... , varn]

slice a list:

nombre_lista[<indice>:<indice2>] : muestra los elementos de la lista desde <indice> hasta el valor anterior a <indice2>. El conteo de <indice> puede iniciar en 0, siendo el inicio de la lista.

nombre_lista[:<indice>] : muestra los elementos de la lista desde el inicio hasta el valor anterior a <indice>.

nombre_lista[<indice>:<indice2>:<# pasos>] : muestra desde <indice> hasta el valor anterior a <indice2> con salteo de <# pasos>.

nombre_lista[::- <indice>] : El - indica mostrar el ultimo elemento de la lista hasta inicio de la lista. El conteo inicia en -1, siendo el ultimo valor de la lista.

nombre_lista[<indice>:- <indice2>] : muestra los elementos de la lista desde el <indice> hasta el valor anterior a - <indice2>.

nombre_lista[<indice>:<indice2>:- <# pasos>] : muestra los elementos de la lista desde <indice> hasta el valor anterior a <indice2> con salteo de - <# pasos> desde el final hasta inicio de la lista.

nombre_lista.append( var4 ) : agregar un objeto a una lista

nombre_lista.pop( <indice> ) : remover elementos

recorrer una lista con ciclo for:

    for elemento in nombre_lista:
        print(elemento)

La funciĂłn insert les servirĂĄ para hacer un append pero en el Ă­ndice que ustedes indiquen, por ejemplo: list.insert(2, valor)
insertamos la variable “valor” en el índice 2 de la lista

đŸ€–đŸ€–đŸ€–
Listas: conjunto de estructura de datos, la cual nos permite guardar dos o mas variables con diferentes tipo de datos.

Ejempo del uso de una lista
Ingresamos los datos y los agregamos a la lista
La lista se imprima con un for loop

def run():
    edad = int(input('Ingresa tu edad: '))
    nombre = input('Ingresa tu nombre: ')

    datos = []
    datos.append(nombre)
    datos.append(edad)

    print('Datos: ')
    for dato in datos:
        print(dato)



if __name__ == '__main__':
    run()

Resultado

Ingresa tu edad: 29
Ingresa tu nombre: Heros
Datos: 
Heros
29

Como una persona que ha usado C y C++ es una locura ver como son de versĂĄtiles y manipulables las listas

Lista

Se utilizan para almacenar varios elementos de igual o distinta tipo en una sola variable.

Las listas forman parte de uno de los 4 tipos de datos integrados en Python: los otros 3 son Tuple , Set y Dictionary. Se utilizan para almacenar colecciones de datos, todos con diferentes calidades y usos.

Ejemplo de lista:

my_ list = ['Hola', True, 3, 4.5 ]

Como acceder a un elemento de la lista :

my_lista[1] # Resultado: True

Les recomiendo el plugin Live code para pycharm para ir viendo la ejecucion de nuestro cĂłdigo en tiempo real:

El otro tipo de datos, son las listas.

Vale, en Python lo llaman listas D: Pero son bĂĄsicamente arreglos jaja, chale, Âżpor quĂ© cambian los nombres entre lenguajes? xD Como sea, me percate que si al mĂ©todo pop() no le pasas ningĂșn parĂĄmetro, automĂĄtiocamente eliminarĂĄ el Ășltimo elemento đŸ€”

Awesome class.
.
I recommend you all this course, too.
.
Python | Tutorial

objetos = [“hola”, 3, 4.5, True]
objetos
[‘hola’, 3, 4.5, True]

objetos[0] = objetos[0].capitalize()
objetos
[‘Hola’, 3, 4.5, True]

alguno sabe como hacer un ciclo repetitivo para volver al menu sin cerrar el programa?

def run():
mylist = [1,2,3,4,5,6,7]
menu = “”“
Menu
1.ver el vector
2.agregar un numero nuevo
3.eliminar una posicion
4.cambiar un numero
”""
print(menu)
opc = int(input("digite una opcion “))
if opc1:
print(mylist)
elif opc
2:
a= int(input(” Escriba el numero que desea agregar "))
mylist.append(a)
print("El numero agragado fue : "+ str(a) + " y el nuevo vector es : “+ str(mylist))
elif opc 3:
b = int(input("Que numero desea borrar del 1 al 7 “))
mylist.remove(b)
print(“El numero eliminado fue : “+ str(b) +”\n”
+” la lista quedo : " + str(mylist))
elif opc
4:
c =int(input(” escriba la posicion que desea cambiar “))
d =int(input(” que numero quiere poner “))
mylist[ c ] = d
print(” la posicion elegida fue : "+ str(mylist[c]) + “\n”
+ " la lista modificada : "+ str(mylist))

if name==“main”:
run()

este fue mi ejercicio de practica, me gusto bastante

Comparto mis apuntes de la clase:

<numero = [
    1,2,3,4,5
]
objetos = [
    'numero',
    'hola',
    1,2
]
#metodo para agregar
objetos.append(True)
objetos.append('Maria')

for lista in objetos:
    print(lista)
    
print('mostrar datos de  la lista ',objetos)
> 

excelente clase

RESUMEN

# LISTAS
# Nos permiten guardar multiples valores en una sola variable.
# Pueden tener cualquier tipo de dato. Conocidos como arrays

example = ['dato de texto', 56, True, 6.7]

# Se empieza contando desde el 0
print(example[0])

# AGREGAR UN ELEMENTO AL FINAL
example.append('Agregrar este elemento de texto')

# BORRAR ELEMENTO
example.pop(2) #El numero dentro del parentesis es el que se va a borrar

# RECORRER LA LISTA
for elemento in example:
    print(elemento)

# PONER LA LSITA AL REVES
example[::-1]

def run():
    mi_lista = []    
    salir = 0

    menu='''
                1. agregar datos a la lista
                2. mostrar datos de la lista
                3. eliminar dato
                4. salir 
                '''

    while salir == 0:
      
        print(menu)
        opcion = int(input('Ingresar opcion: '))
        
        if opcion == 1:
            dato = input('ingrese un valor: ')
            mi_lista.append(dato)
        elif opcion == 2:
            for i in mi_lista:
                print('valor:',i)
        elif opcion == 3:
            eliminar_dato = int(input('Ingrese la posicion del dato: '))
            mi_lista.pop(eliminar_dato)
        elif opcion == 4:
            salir=1

if __name__=='__main__':
    run()

InformaciĂłn resumida de esta clase
#EstudiantesDePlatzi

  • Puedo guardar varios datos en una variable y de diferente tipo. Lo logro llamando mmi variable y usando [ ]

  • Para llamar el dato que yo desee dentro de nuestra variable

  • Para adicionar elementos uso .append

  • Para borrar elementos uso pop ( )

En estas notas se decribe:

  • Que es una lista de Python.
  • Como crear listas de dos dimensiones.
  • Como crear subconjuntos con los elementos de una lista.
  • Como reeemplazar, eliminar y agregar elementos.
  • La diferencia entre copiar los elementos de una lista y copiar una referencia a una lista.

AquĂ­ el enlace.

Si no pudiste encontrar los corchetes en tu teclado usa:
Alt + 91 = [
Alt + 93= ]

Cuando quise agregar texto a mi lista solo me permite si es que coloco el texto entre comillas:

  • numeros.append(“hola”)

El uso de listas nos permite almacenar datos de diversos tipos, en el caso de python se pueden almacenar datos de diferent tipo, como datos: numéricos, texto, booleanos.
Para agregar un valor o elemento --> variable.uppend(elemento a agregar)
Eliminar elemento --> variable.pop(elemento a borrar)

Dios mio, que impresionante ver como siempre le escapé al backend porque se me hacia muy complicado pero este profe lo explico de una forma tan sencilla que hasta se me hizo un poco mås fåcil que el frontend jajaja

Mi trabajo en clase

  • numeros=[1,3,6,8,9,45,90]

numeros
[1, 3, 6, 8, 9, 45, 90]

objetos=[‘hola’,3,4.5,true]

objetos=[‘hola’,3,4.5,True]
objetos
[‘hola’, 3, 4.5, True]

objetos.append(False)
objetos
[‘hola’, 3, 4.5, True, False]

objetos.pop(1)
3

objetos
[‘hola’, 4.5, True, False]

for elemento in objetos:

 print(elemento)


hola
4.5
True
False

objetos[::-1]
[False, True, 4.5, ‘hola’]

objetos[1:3]
[4.5, True]

Excelentes analogias del profesor Facundo, gran instructor.

Listas:
Son estructuras de datos donde podemos almacenar valores, caracteres, y otras listas.
:
Se hace de la siguiente manera:
:
1. se hace una nueva variable y se iguala con corchetes
:
Lista01= [“Dentro de los corchetes se ponen los datos almacenados”, “Separados por una coma indicamos que es otro elemento”]
:
2. Para poder solicitar un elemento concreto de la lista debemos hacer el llamado, seguido de la posiciĂłn de la misma.
Ejemplo:
AquĂ­ me imprime todos los elementos de la lista
DiasLaborales = [“Lunes”, “Martes”, “MiĂ©rcoles”, “Jueves”, “Viernes”]
:
Print(DiasLaborales)
:
:
AquĂ­ me imprime solo el primer elemento de la lista, pues la numeraciĂłn empieza desde cero hasta elementos mas lejanos, por su puesto tambien podemos hacer llamados desde el ultimo elemento de la lista con -1, -2, -3 etc.
:
Print(DiasLaborales[0])
:
O tambien podemos solicitar ciertos datos, de tal
 hasta tal
 de la siguiente manera
:
Print(DiasLaborales[0:4])
:
Le estoy diciendo que me imprima del valor cero hasta el 4.
Para agregar elementos se utiliza el metodo .appen(“Indice de elemento a agregar”)
Para borrar elementos de una lista es .pop(“indice de elemento a borrar”)
:
Tambien se pueden efectuar operaciones matematicas con las listas. Ejemplo: lista a - lista b = lista c

Yo a las listas, las conocĂ­a como vectores. đŸ˜Ș

Recordando del curso intermedio de python a aqui 😀

Como resumen de la clase.
Las listas se crean con variables (cajas) mediante la igualaciĂłn y posterior abertura de corchetes []. Para separar cada dato se usan coman.
Ejemplo.
objeto = [miguel, 1, True, 3.5]
Los métodos enseñados para las cadenas fueron append y pop.
objeto.appeed("Jose) — agrega un nuevo tipo de dato.
objeto.pop(1) – elimina el dato en la posición 1.

Como agregado, podemos recorrer las listas de la misma manera que se recorrer las listas de caracteres (Strings), asĂ­ como usar [].

def listas():

    numeros = [10, 20, 30, 40]
    for x in numeros:
        print(x)

    datos = [True, 10, "Victor", "Hola", "xd"]
    for n in datos:
        print(n)

    print(datos[1])
    print(datos[2])

    #Agregar valores
    datos.append("Nuevo")
    print(datos)

    #Eliminar valores
    datos.pop(0)
    print(datos)

    print(datos[0:2])
    print(datos[2:4])

listas()

Otra forma en la que se pueden crear listas es de la siguiente forma

mi_lista = [x**2 for x in range(5)]

El resultado serĂ­a

[0, 1, 4, 9, 16]

cajon_de_varios=[1,2,“palabra”,True,1.3,]
print(cajon_de_varios)

es una caja para varios

Las listas son formas de almacenar varios valores en una variable, pueden ser incluso de diferentes tipos, float, double, int, char, etc

En una lista se pueden almacenar, agregar o quitar elementos pero en una variable no.

Si quiero agregar un elementos a una lista, debo tener en cuenta que las cadenas de caracteres siempre van entre comillas y los valores numéricos no.

El primero objeto de una lista tiene asignado el nĂșmero de Ă­ndice 0

Las listas pueden contener valores del mismo o de diferente tipo, incluyendo booleanos

las listas pueden contener valor de todo tipo

las estructuras de datos

las listas son otro tipo de datos, a diferencia de los primitivos este tipo de datos puede almacenar diferentes valores al mismo tiempo.

En Python tiene varios tipos de datos compuestos y dentro de las secuencias, estĂĄn los tipos de cadenas de caracteres. Otro tipo muy importante de secuencia son las listas.

Entre las secuencias, el mĂĄs versĂĄtil, es la lista, para definir una, usted debe escribir es entre corchetes, separando sus elementos con comas cada uno.

La lista en Python son variables que almacenan arrays, internamente cada posiciĂłn puede ser un tipo de datos distinto.

factura = [‘pan’, ‘huevos’, 100, 1234]
factura
[‘pan’, ‘huevos’, 100, 1234]

Las listas en Python son:

heterogéneas: pueden estar conformadas por elementos de distintos tipo, incluidos otras listas.
mutables: sus elementos pueden modificarse.

Una lista en Python es una estructura de datos formada por una secuencia ordenada de objetos.

Los elementos de una lista pueden accederse mediante su Ă­ndice, siendo 0 el Ă­ndice del primer elemento.

factura[0]
‘pan’

factura[3]
1234

La funciĂłn len() devuelve la longitud de la lista (su cantidad de elementos).

len(factura)
4

Los índices de una lista inicia entonces de 0 hasta el tamaño de la lista menos uno (len(factura) - 1):

len(factura) - 1
3

Pueden usarse tambiĂ©n Ă­ndices negativos, siendo -1 el Ă­ndice del Ășltimo elemento.

factura[-1]
1234

Los Ă­ndices negativos van entonces de -1 (Ășltimo elemento) a -len(factura) (primer elemento).

factura[-len(factura)]
‘pan’

A través de los índices, pueden cambiarse los elementos de una lista en el lugar.

factura[1] = "carne"
factura
[‘pan’, ‘carne’, 100, 1234

De esta forma se cambia el valor inicial de un elemento de la lista lo cual hacen una la lista mutable
3.9.1. MĂ©todos

El el objeto de tipo lista integra una serie de métodos integrados a continuación:
3.9.1.1. append()

Este método agrega un elemento al final de una lista.

versiones_plone = [2.5, 3.6, 4, 5]
print versiones_plone
[2.5, 3.6, 4, 5]

versiones_plone.append(6)
print versiones_plone
[2.5, 3.6, 4, 5, 6]

3.9.1.2. count()

Este método recibe un elemento como argumento, y cuenta la cantidad de veces que aparece en la lista.

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6]
print “6 ->”, versiones_plone.count(6)
6 -> 1

print “5 ->”, versiones_plone.count(5)
5 -> 1

print “2.5 ->”, versiones_plone.count(2.5)
2.5 -> 1

3.9.1.3. extend()

Este método extiende una lista agregando un iterable al final.

versiones_plone = [2.1, 2.5, 3.6]
print versiones_plone
[2.1, 2.5, 3.6]

versiones_plone.extend([4])
print versiones_plone
[2.1, 2.5, 3.6, 4]

versiones_plone.extend(range(5,7))
print versiones_plone
[2.1, 2.5, 3.6, 4, 5, 6]

3.9.1.4. index()

Este método recibe un elemento como argumento, y devuelve el índice de su primera aparición en la lista.

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6, 4]
print versiones_plone.index(4)
3

El mĂ©todo admite como argumento adicional un Ă­ndice inicial a partir de donde comenzar la bĂșsqueda, opcionalmente tambiĂ©n el Ă­ndice final.

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6, 4]
versiones_plone[2]
3.6

print versiones_plone.index(4, 2)
3

versiones_plone[3]
4

print versiones_plone.index(4, 5)
6

versiones_plone[6]
4

El método devuelve un excepción ValueError si el elemento no se encuentra en la lista, o en el entorno definido.

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6, 4]
print versiones_plone.index(9)
Traceback (most recent call last):
File “<stdin>”, line 1, in <module>
ValueError: 9 is not in list

3.9.1.5. insert()

Este método inserta el elemento x en la lista, en el índice i.

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6]
print versiones_plone
[2.1, 2.5, 3.6, 4, 5, 6]

versiones_plone.insert(2, 3.7)
print versiones_plone
[2.1, 2.5, 3.7, 3.6, 4, 5, 6]

3.9.1.6. pop()

Este mĂ©todo devuelve el Ășltimo elemento de la lista, y lo borra de la misma.

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6]
print versiones_plone.pop()
6

print versiones_plone
[2.1, 2.5, 3.6, 4, 5]

Opcionalmente puede recibir un argumento numérico, que funciona como índice del elemento (por defecto, -1)

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6]
print versiones_plone.pop(2)
3.6

print versiones_plone
[2.1, 2.5, 4, 5, 6]

3.9.1.7. remove()

Este método recibe como argumento un elemento, y borra su primera aparición en la lista.

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6]
print versiones_plone
[2.1, 2.5, 3.6, 4, 5, 6]

versiones_plone.remove(2.5)
print versiones_plone
[2.1, 3.6, 4, 5, 6]

El método devuelve un excepción ValueError si el elemento no se encuentra en la lista.

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6]
print versiones_plone
[2.1, 2.5, 3.6, 4, 5, 6]

versiones_plone.remove(7)
Traceback (most recent call last):
File “<stdin>”, line 1, in <module>
ValueError: list.remove(x): x not in list

3.9.1.8. reverse()

Este método invierte el orden de los elementos de una lista.

versiones_plone = [2.1, 2.5, 3.6, 4, 5, 6]
print versiones_plone
[2.1, 2.5, 3.6, 4, 5, 6]

versiones_plone.reverse()
print versiones_plone
[6, 5, 4, 3.6, 2.5, 2.1]

3.9.1.9. sort()

Este método ordena los elementos de una lista.

versiones_plone = [4, 2.5, 5, 3.6, 2.1, 6]
print versiones_plone
[4, 2.5, 5, 3.6, 2.1, 6]

versiones_plone.sort()
print versiones_plone
[2.1, 2.5, 3.6, 4, 5, 6]

El método sort() admite la opción reverse, por defecto, con valor False. De tener valor True, el ordenamiento se hace en sentido inverso.

versiones_plone.sort(reverse=True)
print versiones_plone
[6, 5, 4, 3.6, 2.5, 2.1]

muy bien esto es super facĂ­l para hacer una caja
normal o variable solo hay que hacer : nombre = 1
pero con todos los elementos as : nombre = [‘4’, ‘hola’ , ‘4.5’, ‘maria’, ‘True’]

Listas -> Pertenece a un conjunto llamado ‘Estructuras de datos’. Estas son formas que funcionan para guardar varios valores en una variable y con diferente formato o tipo de dato.

persona_1 = [18, 'MarĂ­a', 'PĂ©rez', 1.60, True]

En el ejemplo, asignamos a la lista ‘persona_1’ tipos de datos enteros, de punto flotante, cadenas de texto y booleanos.

estas clases entre mas avanzan son mejores
gracias por todo este aprendizaje

vimos las funciones append que es para añadir elementos pop para eliminarlos de la listas tambien recorrer una lista como un string con el ciclo for

ya me esta funcionando