Contenedor de datos para aprendizaje básico en Python: dict (diccionario, mapeo)

Contenedor de datos: dict (diccionario, mapeo)

¿Por qué utilizar un diccionario?
Porque puedes usar un diccionario para implementar la operación de extraer Valor usando la clave

Definición del diccionario

La definición del diccionario también usa {}, pero los elementos almacenados son pares clave-valor:
① Use {} para almacenar el original, cada elemento es un par clave-valor
② Cada par clave-valor contiene clave y valor ( separados por dos puntos ) ③ Use comas
para separar pares clave-valor ④ La clave y el valor pueden ser cualquier tipo de datos (la clave no puede ser un diccionario) ⑥ La clave no se puede repetir , la repetición sobrescribirá los datos originales

Sintaxis:
Definir variables de diccionario:
my_dict={key:value,key:value,…,key:value}
2 formas de definir un diccionario vacío:
①my_dict={}
②my_dict=dict()

Ejemplo:

# 定义字典
my_dict1 = {
    
    "二狗": 99, "小胖": 88, "大白": 77}
# 定义空字典
my_dict2 = {
    
    }
my_dict3 = dict()
print(f"字典1的内容是:{
      
      my_dict1},类型:{
      
      type(my_dict1)}")
print(f"字典2的内容是:{
      
      my_dict2},类型:{
      
      type(my_dict2)}")
print(f"字典3的内容是:{
      
      my_dict3},类型:{
      
      type(my_dict3)}")

# 定义重复key的字典
my_dict1 = {
    
    "二狗": 99, "二狗": 88, "大白": 77}
print(f"重复key的字典内容是:{
      
      my_dict1}")  # 字典不允许重复,新的会覆盖旧的,所以会保留最后一个

resultado de la operación:

El contenido del diccionario 1 es: {'Ergou': 99, 'Xiao Pang': 88, 'Dabai': 77}, tipo: <clase 'dict'> El contenido del diccionario 2 es: {}, tipo: <clase
'dict'>
El contenido del diccionario 3 es: {}, tipo: <clase 'dict'>El
contenido del diccionario de la clave repetida es: {'Ergou': 88, 'Dabai': 77}

Obtener datos del diccionario

Los diccionarios son como colecciones,No poderUtilice la indexación de subíndices
, pero se puede acceder a los diccionarios a través deValor clave para obtener el valor correspondiente

Anidamiento de diccionarios

La clave y el valor del diccionario pueden ser cualquier tipo de datos (la clave no puede ser un diccionario)
, lo que significa que los diccionarios se pueden anidar .

Obtener el contenido del diccionario anidado

Ejemplo:

# 从字典中基于key获取value
my_dict1 = {
    
    "二狗": 99, "小胖": 88, "大白": 77}
score = my_dict1["二狗"]
print(f"二狗的分数是:{
      
      score}")

# 字典的嵌套
stu_score_dict = {
    
    
    "二狗": {
    
    "语文": 99,
             "数学": 88,
             "英语": 77},
    "小胖": {
    
    "语文": 90,
             "数学": 80,
             "英语": 70},
    "大白": {
    
    "语文": 95,
             "数学": 85,
             "英语": 75},
}
print(f"学生的考试信息是:{
      
      stu_score_dict}")
# 从嵌套字典中获取数据
# 看一下二狗的数学成绩
score = stu_score_dict["二狗"]["数学"]
print(f"二狗的数学成绩是:{
      
      score}")

resultado de la operación:

La puntuación de Ergou es: 99.
La información de la prueba del estudiante es: {'Ergou': {'Chino': 99, 'Matemáticas': 88, 'Inglés': 77}, 'Xiao Pang': {'Chino': 90, ' Matemáticas': 80, 'Inglés': 70}, 'Dabai': {'Chino': 95, 'Matemáticas': 85, 'Inglés': 75}} La puntuación de matemáticas de Ergou es:
88

Notas sobre diccionarios

La clave y el valor de un par clave-valor pueden ser de cualquier tipo (la clave no puede ser un diccionario). No se permite que las claves se repitan
en el diccionario . Las adiciones repetidas equivalen a sobrescribir los datos originales. Los diccionarios no se pueden indexar con subíndices. , pero el Valor se recupera a través de la Clave.

Operaciones comunes en diccionarios

Agregar nuevo elemento

Sintaxis: Diccionario [Clave] = Valor, resultado: se modifica el diccionario y se añaden nuevos elementos

Nota: La sintaxis de los elementos nuevos y actualizados es la misma. Si la clave no existe, se agregará . Si la clave existe, se actualizará (la clave no se puede repetir) .

elemento de actualización

Sintaxis: Diccionario [Clave] = Valor, resultado: se modifica el diccionario y se actualiza el elemento

Nota: La clave del diccionario no se puede repetir, por lo que realizar la operación anterior en una clave existente es actualizar el valor.

Eliminar elemento

Sintaxis: diccionario.pop(Clave), resultado: se obtiene el Valor de la Clave especificada, se modifica el diccionario y se eliminan los datos de la Clave especificada.

Borrar diccionario

Sintaxis: diccionario.clear(), resultado: se modifica el diccionario y se borran los elementos

Obtener todas las claves

Sintaxis: diccionario.keys(), resultado: obtener todas las claves del diccionario

diccionario transversal

Sintaxis: para clave en diccionario.keys()

NOTA: Los diccionarios no admiten la indexación de subíndices, por lo que lo mismoNo se puede usar el bucle whileatravesar

Cuente el número de todos los elementos (pares clave-valor) en el diccionario

Sintaxis: len (diccionario)

Resultado: obtiene un número entero que representa el número de elementos (pares clave-valor) en el diccionario

Ejemplo:

# 定义一个字典
my_dict = {
    
    "ergou": 99, "dabai": 88, "xiaopang": 77}

# 新增元素
my_dict["erpang"] = 66
print(f"增加元素后:{
      
      my_dict}")
# 更新元素
my_dict["ergou"] = 55
print(f"更新元素后:{
      
      my_dict}")
# 删除元素
score = my_dict.pop("xiaopang")
print(f"字典删除一个元素后:{
      
      my_dict},xiaopang的分数是{
      
      score}")
# 清空元素,clear
my_dict.clear()
print(f"字典被清空了,内容是:{
      
      my_dict}")

# 获取全部的key
my_dict = {
    
    "ergou": 99, "dabai": 88, "xiaopang": 77}
keys = my_dict.keys()
print(f"字典的全部keys是:{
      
      keys}")

# 遍历字典
# 方式1:通过获取全部key来完成遍历
for key in keys:
    print(f"字典的keys是:{
      
      key}")
    print(f"字典的value是:{
      
      my_dict[key]}")

# 方式2:直接对字典进行for循环,每一次循环都是直接得到key
for key in my_dict:
    print(f"2字典的keys是:{
      
      key}")
    print(f"2字典的value是:{
      
      my_dict[key]}")

# 统计字典内的元素数量,len()函数
num = len(my_dict)
print(f"字典的元素数量有:{
      
      num}")

resultado de la operación:

Después de agregar elementos: {'ergou': 99, 'dabai': 88, 'xiaopang': 77, 'erpang': 66} Después de actualizar elementos: {'ergou': 55, 'dabai': 88, 'xiaopang'
: 77, 'erpang': 66}
Después de eliminar un elemento del diccionario: {'ergou': 55, 'dabai': 88, 'erpang': 66}, la puntuación de xiaopang es 77. El diccionario se borra y el El contenido es:
{}
diccionario Todas las claves del diccionario son: dict_keys(['ergou', 'dabai', 'xiaopang']). Las
claves del diccionario son: ergou.
Los valores del diccionario son: 99.
Los valores del diccionario son: dabai.
Los valores del diccionario son: 88.
Las claves del diccionario son: El valor del
diccionario xiaopang es: 77
2 Las claves del diccionario son: ergou
2 El valor del diccionario es: 99
2 Las claves del diccionario son: dabai
2 El valor del diccionario es: 88
2 Las claves del diccionario son: xiaopang
2 El valor del diccionario es: 77
diccionario El número de elementos es: 3

Resumen de operaciones comunes del diccionario

número de serie funcionar ilustrar
1 Diccionario[Clave] Obtenga el valor del Valor correspondiente a la Clave especificada
2 Diccionario[Clave] = Valor Agregar o actualizar pares clave-valor
3 Diccionario.pop(Clave) Obtenga el Valor correspondiente a la Clave y elimine el par clave-valor de esta Clave en el diccionario
4 diccionario.clear() Borrar diccionario
5 diccionario.claves() Obtenga todas las claves del diccionario, que se pueden usar en un bucle for para recorrer el diccionario.
6 len (diccionario) Contar el número de elementos en un diccionario.

Funciones del diccionario

Después del estudio anterior de los diccionarios, podemos concluir que los diccionarios tienen las siguientes características:
1. Pueden acomodar múltiples datos
2. Pueden acomodar diferentes tipos de datos
3. Cada dato es un par Clave:Valor
4. Se puede obtener a través de Clave a Valor , la clave no se puede repetir (la repetición sobrescribirá)
5. No se admite el índice de subíndice
6. Se puede modificar ( agregar o eliminar elementos actualizados, etc.)
7. Admite el bucle for , pero no el bucle while

Ejercicios de uso del diccionario: ascenso y aumento salarial.

Supongo que te gusta

Origin blog.csdn.net/weixin_44996886/article/details/132678473
Recomendado
Clasificación