Python – Capítulo 19: Agregando elementos a una lista

Hasta ahora hemos trabajado con listas en las que su longitud se ha mantenido constante desde su creación. En el capítulo de hoy veremos cómo agregar dinámicamente nuevos elementos.

Arranquemos Python IDLE o el intérprete interactivo.

Vamos a crear una lista que emplearemos para gestionar la lista de espera de un vuelo de la compañía Python Airlines.

>>> lista_espera = ['Luis Luisero', 'Pedro Pedrete', 'Javier Javiercín', 'Rosa Rosae']

Si quedan vacantes, Luis será el primero con derecho a ocupar una plaza, seguido de Pedro. Rosa lo va a tener algo más difícil, pues está la última en la cola.

Llega una nueva usuaria, Marta Martínez, y se le informa que debe permanecer en lista de espera, pero que aún tiene a cuatro personas por delante.

Para inscribirla, ejecutamos el siguiente comando:

>>> lista_espera.append('Marta Martínez')

El método append agrega un elemento a una lista en última posición.

Un poco de terminología. Un método es una especie de función que actúa sobre un objeto determinado. En este caso, el método append está acuando sobre lista_espera. El nombre del objeto y el método aparecen separados por un punto.

Comprobemos que ha cumplido con su cometido:

>>> lista_espera
['Luis Luisero', 'Pedro Pedrete', 'Javier Javiercín', 'Rosa Rosae', 'Marta Martínez']

Pero lo va a tener realmente complicado. Al parecer hay rumores de que sólo habrá tres vacantes, aunque no se pierde nada por intentarlo.

De repente llega al mostrador de facturación una conocida del piloto. La meterán en lista de espera, para ser discretos, pero en una posición que asegure que cogerá el avión.

Debemos asegurarnos que esté la tercera en la cola.

Podemos agregar un elemento a una lista en la posición que deseemos aplicando el método insert, facilitando como parámetro adicional el índice en el que quedará ubicado. El elemento que estaba situado en esa posición se desplazará un puesto hacia la derecha.

Puesto que va a ser el tercer elemento, su índice es dos. Recordemos que el primer elemento de una lista tiene por índice cero.

>>> lista_espera.insert(2, 'Helen Chufada')

Veamos qué ha pasado:

>>> lista_espera
['Luis Luisero', 'Pedro Pedrete', 'Helen Chufada', 'Javier Javiercín', 'Rosa Rosae',
 'Marta Martínez']

Volar volará, pero no hay derecho…

Javier Montero

9 opiniones en “Python – Capítulo 19: Agregando elementos a una lista”

  1. Uy que bien vamos, esto cada vez se pone bueno. Por cierto, he notado que para completar el nombre de un objeto o de algún método incluso cualquier palabra ya escrita en IDLE tenemos un autocompletar, solo haciendo ctrl+space, al menos en linux, por si ha alguien le sirve. IDLE nada que envidiar a otros IDE’s. Por cierto, sería posible un post sobre el debuger del IDLE… es intuitivo pero no esta mal algunas explicaciones/consejos.
    Saludos

      1. Eclipse es toda una navaja suiza, un baúl entero lleno de cosas aún por conocer, yo lo utilizo para practicar JAVA y no solo eso, C# y hasta BBDD, en concreto PLPgSQL

  2. Es una gretsch esa guitarra que se ve en la foto?
    Que curioso que también soy músico y estoy interesado en la programación : )
    Estoy siguiendo un libro para principiantes y en el apartado de listas no explicaban esto del insert,
    para simplificar lo más simple, me imagino….

  3. Si quiero que la lista de precios me la de el usuario por teclado, ¿como se programaría ? he probado de muchas formas pero no encuentro la solución

    precios = []

    precios = int (input (‘Introduce el precio: ‘))
    precios.append (int(input()))
    print (precios)

    1. No se si ya lo resolviste, aun estoy aprendiendo a programar en python pero se me ocurre una posible solucion (ya la he probado y funciona xD):

      #creas tu arreglo en blanco
      precios=[]

      #lo pones en un ciclo para que te siga pidiendo los precios hasta que ponga un cero deja de pedir precios
      while True:
      #agregas a una variable el precio que introdujo el usuario y lo conviertes a entero, lo ideal seria que fuera flotante
      precio = int(input(‘Introduce el precio (0 para salir): ‘))
      #si el precio es cero termina el ciclo
      if precio==0:
      break
      #agregas a la lista el precio que te da el usuario
      precios.append(precio)
      #imprimes la lista completa
      print(precios)

Responder a Javier Montero Cancelar respuesta

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies