Menú Cerrar
expresión regular

Introducción a las listas, conjuntos y diccionarios en Python.

A todos nos ha costado saber qué métodos utilizar al momento de manejar listas, conjuntos y diccionarios en Python. En entradas anteriores vimos una lista de 43 métodos para manejar string en Python. En esta, vamos a ver los métodos más importantes para manejar listas, conjuntos y diccionarios en Python. Si eres de JavaScript, te puede interesar esta lista de métodos para manejar string en JavaScript. Antes de empezar, haremos una breve introducción a las listas, conjuntos y diccionarios. Si quieres leer más sobre estructuras de datos, haz click aquí.

Listas

Las listas son una estructura dinámica de datos que contiene una colección de elementos homogéneos (del mismo tipo) de manera que se establece entre ellos un orden. Es decir, cada elemento, menos el primero, tiene un predecesor, y cada elemento, menos el último, tiene un sucesor.

En la siguiente foto te muestro una lista para que puedas entender mejor la definición anterior.

Listas enlazadas
Listas

Conjuntos

Un conjunto es la agrupación de diferentes elementos que comparten entre sí características y propiedades semejantes. Estos elementos pueden ser sujetos u objetos, tales como: números, canciones, meses, personas, etcétera. Por ejemplo: el conjunto de números primos o el conjunto de planetas del sistema solar.

Para crear un conjunto, se encierra una serie de elementos entre llaves {}, o bien se usa el constructor de la clase set() y se le pasa como argumento un objeto iterable (como una lista, una tupla, una cadena, etcétera).

Diccionarios

Un Diccionario es una estructura de datos y un tipo de dato en Python con características especiales que nos permite almacenar cualquier tipo de valor como: enteros, cadenas, listas e incluso otras funciones.Los diccionarios permiten además identificar cada elemento por una clave (Key).

Para definir un diccionario, se encierra el listado de valores entre llaves. Las parejas de clave y valor se separan con comas, y la clave y el valor se separan con dos puntos, así como se muestra a continuación.

diccionario = {'nombre' : 'Carlos', 'edad' : 22, 'cursos': ['Python','Django','JavaScript'] }

A continuación, vamos a ver un conjunto de métodos para manejar las listas.

Métodos para el manejo de listas

append()

El método append() sirve para agregar un valor al final de la lista. A continuación, te presento un ejemplo.

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

Los otros ejemplos sobre listas se harán tomando en cuenta la lista anterior [1,2,3,4,5,6,7]

copy()

Permite copiar los valores de una lista a otra. Este método no recibe ningún parámetro y la lista se sobreescribe. A continuación, te presento un ejemplo.

lista=[1,2,3,4,5,6,7]
lista1=[8,9,10,11]
lista=lista1.copy()
print(lista)

count()

Este método permite contar en una lista cuántas veces se encuentra un valor pasado como parámetros. A continuación, te presento un ejemplo.

lista=[1,2,3,4,5,6,7,1,1]
print(lista.count(1))

insert()

Permite instar un valor en una posición definida por el usuario, por lo que este método recibe dos parámetros: la posición y el valor a poner en dicha posición. A continuación, te presento un ejemplo.

lista=[1,2,3,4,5,6,7,1,1]
lista.insert(2,11)
print(lista)

reverse()

Permite revertir una lista, no recibe ningún parámetro. A continuación, te presento un ejemplo.

lista=[1,2,3,4,5,6,7]
lista.reverse()
print(lista)

remove()

Permite eliminar un valor en una lista. Recibe como parámetro el valor a eliminar. A continuación, te presento un ejemplo.

lista=[1,2,3,4,5,6,7]
lista.remove(7)
print(lista)

sort()

Permite reordenar una lista de forma ascendente a menos que se especifique lo contrario. A continuación, te presento un ejemplo.

lista=[1,2,3,4,5,6,7,6,11,10,9]
lista.sort()
print(lista)

pop()

Permite remover el valor en la posición especificada, si no se especifica ningún valor se elimina el último.

lista=[1,2,3,4,5,6,7]
lista.pop(2)
print(lista)

extend()

Permite juntar dos listas.

lista=[1,2,3,4,5,6,7]
lista1=[8,9,10,11,12]
lista.extend(lista1)
print(lista)

index()

Regresa el índice del valor pasado como parámetro.

lista=[1,2,3,4,5,6,7]
lista1=lista.index(4)
print(lista1)

clear()

Elimina todos los elementos de una lista.

lista=[1,2,3,4,5,6,7]
lista1=lista.clear()
print(lista1)

Si te sientes cansado, tómate un descanso y responde este quiz de python.

Sigamos con los conjuntos.

Métodos para el manejo de conjuntos

add()

Permite agregar un valor al final del conjunto.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto.add("hola")
print(conjunto)

Si olvidas los fundamentos y te preguntas por qué los elementos no se repiten, te recuerdo que en un conjunto cada elemento se repite solo una vez.

clear()

Tiene el mismo efecto que en una lista. Elimina los elementos del conjunto y devuelve un conjunto vacío.

pop()

Permite eliminar el primer elemento del conjunto, a diferencia de una lista, no recibe ningún parámetro.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto.pop()
print(conjunto)

union()

Como su nombre lo indica, permite unir dos conjuntos.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto1={10,11,12,1,2,3,4}
conjunto2=conjunto.union(conjunto1)
print(conjunto2)

issuperset()

Permite saber si un conjunto tiene todos los elementos del conjunto que recibe como parámetro. Devuelve True si los tiene, en caso contrario, devuelve False.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto1={10,11,12,1,2,3,4}
conjunto2={1,2,3}
print(conjunto.issuperset(conjunto1))
print(conjunto.issuperset(conjunto2))

issubset()

Permite saber si todos los elementos de un conjunto están en el conjunto que recibe como parámetro. Devuelve True si todos están, en caso contrario, devuelve False. En otras palabras, permite saber si un conjunto es subconjunto de otro.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto1={10,11,12,1,2,3,4}
conjunto2={1,2,3}
print(conjunto1.issubset(conjunto))
print(conjunto2.issubset(conjunto))

intersection()

Permite saber qué elementos tienen en común los dos conjuntos, el orden no importa.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto2={1,2,3,10,11,14}
print(conjunto.intersection(conjunto2))

difference()

Permite saber qué elementos están en un conjunto y que no están en el conjunto que recibe como parámetro y viceversa.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto2={1,2,3,10,11,14}
print(conjunto.difference(conjunto2))
print(conjunto2.difference(conjunto))

isdisjoint()

Permite saber si los dos conjuntos no tienen ningún elemento en común. Devuelve True si no tienen, en caso contrario, devuelve False.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto2={1,2,3,10,11,14}
conjunto3={10,11,12,13}
print(conjunto.isdisjoint(conjunto2))
print(conjunto.isdisjoint(conjunto3))

discard()

Permite eliminar el elemento mencionado del conjunto, recibe un único parámetro que es el elemento a eliminar.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto.discard(3)
print(conjunto)

copy()

Al igual que en una lista, permite copiar los elementos de un conjunto a otro, también sobreescribe los elementos del otro conjunto donde se hace la copia.

conjunto={1,2,3,4,5,2,4,3,6,7,7,8,9}
conjunto1={10,11,12}
conjunto1=conjunto.copy()
print(conjunto1)

¡Ya casi terminamos! La última y ya.

Métodos para el manejo de conjuntos

copy()

Si has leído las otras dos secciones, el copy() hace lo mismo, así que no te voy a aburrir.

clear()

También hace lo mismo que en un conjunto y en una lista.

fromkeys()

Recibe como parámetros un iterable y un valor y devuelve un diccionario que contiene como claves los elementos del iterable con el mismo valor ingresado. Si no se ingresa ningún valor devuelve None para todas las claves.

dic = dict.fromkeys(['a','b','c','d', 'e', 'f'],5)
print(dic)

items()

Devuelve una lista de tuplas donde cada tupla se compone de dos elementos: el primero, la clave, y el segundo, su valor.

dic =   {'a' : 1, 'b' : 2, 'c' : 3 , 'd' : 4}
elementos = dic.items()
print(elementos)

get()

Recibe como parámetro una clave y devuelve el valor de dicha clave. Si no lo encuentra, devuelve un objeto None.

dic = {'a' : 1, 'b' : 2, 'c' : 3 , 'd' : 4}
valor1 = dic.get('b')
valor2 = dic.get('e')
print(valor1)
print(valor2)

keys()

Retorna las claves del diccionario.

dic = {'a' : 1, 'b' : 2, 'c' : 3 , 'd' : 4}
llaves = dic.keys()
print(llaves)

Resumen

En esta entrada vimos algunos métodos muy importantes para manejar listas, conjuntos y diccionarios en Python. Iré actualizando la entrada así que no olvides regresar pronto. ¿Quieres relajarte después de tanta lectura? Contesta estas trivias de Python.

Acerca del autor

Saintus Zephir

Ingeniero en Sistemas Computacionales y estudiante de Maestría en Ciencias en Ingeniería y Tecnologías Computacionales en el Centro de Investigación y de Estudios Avanzados del IPN (CINVESTAV-IPN).

Comparte el artículo en tus redes sociales

Artículos relacionados

13 comentarios

  1. Izabela Rodríguez

    Gracias, cada día amo más este blog.

  2. Raleigh

    My brother suggested I might like this website. He was entirely right.
    This post truly made my day. You cann’t imagine simply how much time I had spent for this information! Thanks!

  3. Viola

    Hola! I’ve been following your weblog for a long time now and finally got the courage to
    go ahead and give you a shout out from New Caney Tx! Just wanted to say keep
    up the fantastic work!

  4. Herman

    For most up-to-date news you have to pay a visit world wide web and on the web I found this web page as a finest
    web site for hottest updates.

  5. Holley

    I’m not sure why but this website is loading very slowfor me. Is anyone else having this issue or is it a issue on my end?I’ll check back later and see if the problem still exists.

  6. Cyrus

    I’ve been surfing online more than three hours today, yet I
    never found any interesting article like yours.
    It’s pretty worth enough for me. In my view, if all website owners and bloggers made good content as you did,
    the internet will be a lot more useful than ever before.

  7. Sophia

    Everything said was very logical. However, think on this,
    suppose you were to write a awesome post title?
    I ain’t saying your content is not solid, but suppose you added something that grabbed a person’s attention? I mean Listas, conjuntos, diccionarios: métodos para
    manejarlos en python. is a little plain. You ought to peek at Yahoo’s
    home page and watch how they create news titles to grab viewers to click.
    You might try adding a video or a picture or two to grab people
    interested about everything’ve got to say. In my opinion, it could make your website a little livelier.

  8. Reed

    Amazing! Its really awesome paragraph, I have got much clear ideaabout from this post.

  9. Florine

    Quality articles or reviews is the important to be a focus for the people to pay a visit the website, that’s what this site is providing.

  10. Lucy

    I really like your blog.. very nice colors & theme. Did you make this website
    yourself or did you hire someone to do it for you?
    Plz answer back as I’m looking to create my own blog and
    would like to know where u got this from. thank you

  11. Rolanda

    Appreciating the hard work you put into your site and in depthinformation you present. It’s great to come across a blog every once in a while that isn’t the same outdated rehashedmaterial. Great read! I’ve saved your site and I’m including your RSS feeds to my Google account.

  12. Celesta

    Hey! Would you mind if I share your blog with my zynga group?
    There’s a lot of people that I think would
    really appreciate your content. Please let me know.

    Thank you

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

× ¿Cómo puedo ayudarte?