Preguntas de la entrevista sobre el diccionario de Python

Tiempo estimado de lectura: 6 minutos

En nuestro primer vídeo sobre las preguntas de la entrevista de python hablamos de algunas de las preguntas de alto nivel que te pueden hacer en una entrevista.

En este post, hablaremos de las preguntas de la entrevista sobre los diccionarios de python.

¿Qué son los diccionarios de Python y sus propiedades?

En primer lugar, son mutables, lo que significa que pueden cambiarse, siga leyendo para ver ejemplos.

De este modo, puede añadir o quitar pares clave-valor según le convenga.

Además, los nombres de las teclas pueden cambiarse.

Otra de las propiedades que hay que tener en cuenta es que distinguen entre mayúsculas y minúsculas, lo que significa que puede existir el mismo nombre de clave si está en diferentes mayúsculas.

¿Cómo se crea un diccionario vacío en Python?

Como se puede ver a continuación, el proceso es sencillo, sólo tienes que declarar una variable igual a dos llaves, y listo, ya estás en marcha.

Una alternativa es declarar una variable igual a dict(), y en una instancia, tienes un diccionario vacío.

El siguiente bloque de código debería ser un buen ejemplo de cómo hacerlo:

# How do you create an empty dictionary?
empty_dict1 = {}
empty_dict2 = dict()
print(empty_dict1)
print(empty_dict2)
print(type(empty_dict1))
print(type(empty_dict2))

Output:
{}
{}
<class 'dict'>
<class 'dict'>

¿Cómo se añaden valores a un diccionario de Python?

Si quieres añadir valores a tu diccionario de Python, hay varias formas posibles, el código de abajo, puede ayudarte a tener una mejor idea:

#How do add values to a python dictionary
empty_dict1 = {}
empty_dict2 = dict()

empty_dict1['Key1'] = '1'
empty_dict1['Key2'] = '2'
print(empty_dict1)

#Example1 - #Appending values to a python dictionary
empty_dict1.update({'key3': '3'})
print(empty_dict1)

#Example2 - Use an if statement
if "key4" not in empty_dict1:
    empty_dict1["key4"] = '4'
else:
    print("Key exists, so not added")
print(empty_dict1)

Output:
{'Key1': '1', 'Key2': '2'}
{'Key1': '1', 'Key2': '2', 'key3': '3'}
{'Key1': '1', 'Key2': '2', 'key3': '3', 'key4': '4'}

¿Cómo se ordena un diccionario de Python?

Una de las propiedades de los diccionarios es que no están ordenados, por lo que si es grande encontrar lo que necesitas puede llevar un poco de tiempo.

Por suerte, Python ha proporcionado la capacidad de ordenar de la siguiente manera:

#How to sort a python dictionary?
empty_dict1 = {}

empty_dict1['Key2'] = '2'
empty_dict1['Key1'] = '1'
empty_dict1['Key3'] = '3'
print("Your unsorted by key dictionary is:",empty_dict1)
print("Your sorted by key dictionary is:",dict(sorted(empty_dict1.items())))

#OR - use list comprehension
d = {a:b for a, b in enumerate(empty_dict1.values())}
print(d)
d["Key2"] = d.pop(0) #replaces 0 with Key2
d["Key1"] = d.pop(1) #replaces 1 with Key1
d["Key3"] = d.pop(2) #replaces 2 with Key3
print(d)
print(dict(sorted(d.items())))

Output:
Your unsorted by key dictionary is: {'Key2': '2', 'Key1': '1', 'Key3': '3'}
Your sorted by key dictionary is: {'Key1': '1', 'Key2': '2', 'Key3': '3'}
{0: '2', 1: '1', 2: '3'}
{'Key2': '2', 'Key1': '1', 'Key3': '3'}
{'Key1': '1', 'Key2': '2', 'Key3': '3'}

¿Cómo se elimina una clave de un diccionario de Python?

De vez en cuando, algunas llaves pueden dejar de ser necesarias. En este caso, tendrá que eliminarlas. Al hacerlo, también se elimina el valor asociado a la clave.

#How do you delete a key from a dictionary?
empty_dict1 = {}

empty_dict1['Key2'] = '2'
empty_dict1['Key1'] = '1'
empty_dict1['Key3'] = '3'
print(empty_dict1)

#1. Use the pop function
empty_dict1.pop('Key1')
print(empty_dict1)

#2. Use Del

del empty_dict1["Key2"]
print(empty_dict1)

#3. Use dict.clear()
empty_dict1.clear() # Removes everything from the dictionary.
print(empty_dict1)

Output:
{'Key2': '2', 'Key1': '1', 'Key3': '3'}
{'Key2': '2', 'Key3': '3'}
{'Key3': '3'}
{}

¿Cómo se elimina más de una clave de un diccionario de Python?

A veces puede ser necesario eliminar varias claves y sus valores. Utilizar el código anterior repetidamente puede no ser la forma más eficiente de conseguirlo.

Para ayudar a ello, Python ha proporcionado una serie de formas de conseguirlo, como se indica a continuación:

#How do you delete more than one key from a dictionary
#1. Create a list to lookup against
empty_dict1 = {}

empty_dict1['Key2'] = '2'
empty_dict1['Key1'] = '1'
empty_dict1['Key3'] = '3'
empty_dict1['Key4'] = '4'
empty_dict1['Key5'] = '5'
empty_dict1['Key6'] = '6'

print(empty_dict1)

dictionary_remove = ["Key5","Key6"] # Lookup list

#1. Use the pop method

for key in dictionary_remove:
  empty_dict1.pop(key)
print(empty_dict1)

#2 Use the del method
dictionary_remove = ["Key3","Key4"]
for key in dictionary_remove:
  del empty_dict1[key]
print(empty_dict1)

¿Cómo se cambia el nombre de una clave en un diccionario de Python?

Habrá situaciones en las que los nombres de las claves no sean los correctos, por lo que habrá que cambiarlos.

Hay que tener en cuenta que al cambiar los nombres de las claves, el nuevo nombre no debe existir ya.

A continuación se presentan algunos ejemplos que le mostrarán las diferentes maneras en que esto puede lograrse.

# How do you change the name of a key in a dictionary
#1. Create a new key , remove the old key, but keep the old key value

# create a dictionary
European_countries = {
    "Ireland": "Dublin",
    "France": "Paris",
    "UK": "London"
}
print(European_countries)
#1. rename key in dictionary
European_countries["United Kingdom"] = European_countries.pop("UK")
# display the dictionary
print(European_countries)

#2. Use zip to change the values

European_countries = {
    "Ireland": "Dublin",
    "France": "Paris",
    "United Kingdom": "London"
}

update_elements=['IRE','FR','UK']

new_dict=dict(zip(update_elements,list(European_countries.values())))

print(new_dict)

Output:
{'Ireland': 'Dublin', 'France': 'Paris', 'UK': 'London'}
{'Ireland': 'Dublin', 'France': 'Paris', 'United Kingdom': 'London'}
{'IRE': 'Dublin', 'FR': 'Paris', 'UK': 'London'}

¿Cómo se obtiene la clave y los valores mínimos y máximos en un diccionario de Python?

Por último, es posible que tenga un diccionario grande y necesite ver las fronteras o los límites de los valores que contiene.

En el siguiente código, algunos ejemplos de lo que puede hablar deberían ayudar a explicar sus conocimientos.

#How do you get the min and max keys and values in a dictionary?
dict_values = {"First": 1,"Second": 2,"Third": 3}

#1. Get the minimum value and its associated key
minimum = min(dict_values.values())
print("The minimum value is:",minimum)
minimum_key = min(dict_values.items())
print(minimum_key)

#2. Get the maximum value and its associated key
maximum = max(dict_values.values())
print("The maximum value is:",maximum)
maximum_key = max(dict_values.items())
print(maximum_key)

#3. Get the min and the max key
minimum = min(dict_values.keys())
print("The minimum key is:",minimum)

#2. Get the maximum value and its associated key
maximum = max(dict_values.keys())
print("The maximum key is:",maximum)

Output:
The minimum value is: 1
('First', 1)
The maximum value is: 3
('Third', 3)
The minimum key is: First
The maximum key is: Third

Deje una respuesta

Su dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *.