Aprender programación: esencial para el examen de ingreso a Python [10]

Módulo de conocimiento (10) Un vasto océano - Diccionario

1. Diccionario de definiciones

2. Operaciones de diccionario

2.1 Operación de búsqueda

2.2 Agregar (modificar) operaciones

2.3 Eliminar operación

Código adjunto:

 Módulo de refinamiento de conocimientos (10) Un vasto océano - diccionario


Módulo de conocimiento (10) Un vasto océano - Diccionario

El diccionario (dict) es bastante diferente de otros formatos de secuencia (lista/tupla). Los diccionarios se definen con llaves {} y usan clave: valor para almacenar datos.

Puede considerar la clave como un índice, ¡y la clave es única! Las claves deben ser cadenas, números o tuplas. El valor puede almacenar cualquier tipo de datos.


1. Diccionario de definiciones

diccionario vacío

diciembre = {}

imprimir ( escribir (dic))

Función de diccionario dict() :

Formato : dict({clave1:valor1, clave2:valor2, clave3:valor3})

d = dict ({ "número" : 5, "lista" : lista ( rango (1,10)),  "tupla" : (1,1.5, "persona" )})

imprimir (d)

Se puede encontrar que : 1. Las claves y los valores están separados por dos puntos ":" 2. Cada par clave-valor debe estar separado por comas ",".


2. Operaciones de diccionario

alimentos = { "hamburguesa" :15, "muslos de pollo" :8, "coca cola" :3, "gelatina de hierba asada" :8,  "papas fritas" :8}

2.1 Operación de búsqueda

  • Nombre del diccionario [índice]            --- Valor de salida, si no hay índice, se informará un error
  • Diccionario name.get(index) ---no se informará ningún error si no hay índice Ninguno
  • Diccionario name.keys()           --- Obtener todos los índices
  • Diccionario nombre.valores()        --- Obtener todos los valores
  • Nombre del diccionario.items()          --- Obtener todo (índice: valor)

print (foods[ "Muslos de pollo" ])   # Valor de salida, si no hay índice, se informará un error

print (foods.get( "Piernas de pollo picantes" ))  # No se informará ningún error si no hay índice Ninguno

# Obtener todos los índices: nombre del diccionario.keys()

imprimir (alimentos.claves())

# Obtener todos los valores: nombre del diccionario.valores()

imprimir (alimentos.valores())

# Obtener todos los nombres del diccionario (índice: valor).items()

imprimir (alimentos.elementos())

Recorrer para obtener valores clave

para  i en  alimentos.elementos(): # alimentos.valores()

    imprimir (yo)

para  i en  alimentos:    # Al recorrer el diccionario directamente, la salida es su valor clave

     imprimir (yo)


2.2 Agregar (modificar) operaciones

alimentos[ "agua azucarada" ] = 4  #Cuando no haya clave, aumentarla.

imprimir (alimentos.elementos())

alimentos[ "agua con azúcar" ] = 10  # Cuando haya una clave, modifíquela.

imprimir (alimentos.elementos())

Formato: Diccionario1.actualización (Diccionario2)

Saque los pares clave-valor del diccionario 2. Si el par clave-valor no existe en el diccionario 1, agréguelo; si existe, modifique el valor original.

foo = { "hamburguesa" : "15 yuanes" , "alitas de pollo" : 6}

food.update(foo)   # Agregar si no hay clave, actualizar el valor si la hay

imprimir (alimentos.elementos())


2.3 Eliminar operación

del diccionario [clave] --eliminar un par clave-valor

Dictionary.pop(key) : eliminar un par clave-valor devuelve el valor eliminado de forma predeterminada

Dictionary.clear() --borrar el diccionario

del  alimentos[ "hamburguesa" ]

imprimir (alimentos.elementos())

alimentos.pop ( "Coca" )

imprimir (alimentos.elementos())

alimentos.clear()

imprimir (alimentos.elementos())


Pregunta 1: Utilice las características de la clave: valor del diccionario para crear un sistema de consulta de números de teléfono .

1. Solicite ingresar el nombre del solicitante

2. La información existe, imprima el nombre y número de teléfono;

3. Si la información no existe, se le pedirá que ingrese su nombre y número.

4. Realizar un bucle y volver a consultar

Pregunta 2: Implementar estadísticas de palabras y el número de veces que aparecen en una cadena:

(1) La afirmación estadística es: ser o no ser, esa es una cuestión

(2) Se requiere contar todas las palabras que aparecen en la oración y su número de apariciones.

(3) Utilice un diccionario para la salida, el formato es el siguiente (el orden puede ser inconsistente, pero el número de estadísticas debe ser correcto).

{'a': 2, 'ser': 2, 'o': 1, 'no': 1, 'es': 1, 'a': 1, 'pregunta': 1, 'eso': 1}


Código adjunto:

# 字典定义与赋值
dic = {} #空字典
print(type(dic))
# dict({key1:value1, key2:value2, key3:value3}) 
d = dict({"数":5 ,"列表":list(range(1,10)) ,  "元组":(1,1.5,"人")})
print(d)

#可以发现:1.键与值是用":"冒号分割的;2.每个键值对都要以","逗号隔开。

#2.字典的操作
foods = {"汉堡":15, "鸡腿":8, "可乐":3,"烧仙草":8, "薯条":8}

'''2.1查找操作
字典名[索引]  	 ---输出值,没有索引会报错
字典名.get(索引)     ---没有索引不会报错  None
字典名.keys()	---获取所有索引
字典名.values()	---获取所有值
字典名.items()	---获取所有(索引:值)'''

print(foods["鸡腿"]) 	 # 输出值,没有索引会报错
print(foods.get("香辣鸡腿"))     # 没有索引不会报错  None
# 获取所有索引: 字典名.keys()
print(foods.keys())
# 获取所有值: 字典名.values()
print(foods.values())
# 获取所有(索引:值)  字典名.items()
print(foods.items())

# 循环遍历获取键值
for i in foods.items():
    print(i)
for i in foods:   # 直接遍历字典时,输出的是它的键值
    print(i)


#2.2 增加(修改)操作
foods["糖水"] = 4	 # 当没有键,就增加。
print(foods.items())
foods["糖水"] = 10 	 # 当有键,就修改。
print(foods.items())

#格式:字典1.update(字典2) 
#取出字典2的键值对,键值对在字典1没有就添加进入;存在则修改原来的值。

foo = {"汉堡":"15元", "鸡翅":6}
foods.update(foo) 	 # 没有键就增加,有就更新值
print(foods.items())

#2.3删除操作
#del 字典[键]       --删除一个键值对
#字典.pop(键)      --删除键值对默认返回删除的值
#字典.clear()        --清空字典
del foods["汉堡"]
print(foods.items())
foods.pop("可乐")
print(foods.items())
foods.clear()
print(foods.items())

'''题1:利用字典键:值的特点,制作一个电话号码查询系统。
1、提示输入查询人的姓名
2、信息存在,打印出姓名,电话号码;
3、如果信息不存在,提示录入姓名,号码
4、循环重新查询'''

tel = {"张三":"1345611235","李四":"1356974001"}
while True:
    name = input("输入姓名: ")
    if name in tel:
        print(name,tel.get(name))
    elif name=="#":
        break
    else:
        phone = input("电话号码:")
        tel[name] = phone
print(tel.items())


'''题2:实现统计字符串中的单词和单词出现的次数:
(1)统计的语句为:to be or not to be that is a question
(2)要求统计该句中出现的所有单词和其出现次数。
(3)使用字典进行输出'''
string = "to be or not to be that is a question" #定义变量存储字符串
lis=string.split(" ")	#使用分割函数将字符串转为列表
count={}	#定义一个空字典
for x in lis:	#遍历列表
    if x not in count:	#判断列表元素是否在字典中
       count[x]=1
    else:
       count[x]+=1
print(count)	#打印字典


 Módulo de refinamiento de conocimientos (10) Un vasto océano - diccionario

1. Ejecute el siguiente código ¿Cuál es el resultado? ( )

dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4}

dic.pop('b') 

del dique['d']

dic['d'] = 4 

imprimir(dic)

A.{'a': 1, 'b': 2, 'c': 3,'d':4} B.{'a': 1, 'c': 3, 'd': 4} 

C.{'a': 1, 'c': 3} D.{'d': 4}

2. ¿Cuál es el resultado de ejecutar el siguiente código? ( )

a={'xm':'zhangsan'}

b={'sg':175,'tz':'55kg'}

b.actualizar(a)

solo

A.2 B.3 C.4 D.6

3. ¿Cuál de las siguientes descripciones de las características del diccionario es correcta? ( )

A. Los diccionarios admiten la indexación posicional   

B. Los valores (no claves) del diccionario pueden contener listas y otros tipos de datos.

C. Un diccionario es una colección ordenada de objetos.

D. Los datos del diccionario se pueden dividir.

4. En cierta escuela, el número correspondiente de estudiantes de Zhang San, Li Si y Wang Wu es 100, 101 y 102 respectivamente. Ahora almacene la relación correspondiente entre sus números de estudiantes y nombres en el diccionario id_name.Con respecto a la descripción del siguiente segmento de código, ¿cuál es incorrecto? ( )
id_nombre = {101: 'Zhang San', 102: 'Li Si', 103: 'Wang Wu'} nombre_id =
{}
nombre_id[id_nombre[101]] = 101
nombre_id[id_nombre[102]] = 102
nombre_id[ id_nombre[103]] = 103
print(id_nombre == nombre_id)

R. En el diccionario id_name, el nombre correspondiente solo se puede buscar por el número de estudiante, pero el número de estudiante correspondiente no se puede buscar por nombre.

B. El código anterior construye un nuevo diccionario name_id usando el nombre en id_name como clave y el ID del estudiante como valor.

C. Después de ejecutar el código anterior, el nombre_id del diccionario es: {'Zhang San': 101, 'Li Si': 102, 'Wang Wu': 103}.

D. El resultado de salida del código anterior es: Verdadero.

5. Para el diccionario infor = {"name":"tom", "age":13, "sex":"male"}, ¿cuál es la operación correcta para eliminar el par clave-valor "age":13? ( )

A.del infor['edad'] B.del infor["edad":13]

C.del información D.infor.clear()

6. Se sabe que la puntuación del diccionario = {"Chinese":95,"Mathematics":93,"English":97}, luego ejecuta print(score["Chinese"]+ s core["Mathematics"]//2 ) , ¿El resultado de salida es? ( )

A.141 B.141.5 C.94 D.94.0

7. ¿Cuál es el resultado de ejecutar el siguiente programa? ( )

infor = {"nombre":"tom", "edad":13, "sexo":"masculino"}

imprimir(len(información))

A.6 B.3 C.4 D.1

8. Después de ejecutar el siguiente código, ¿cuál es el resultado? ( )  

seq=['hola','buenos','días']  

s='*'.join(sec)

huellas dactilares)

A、hola*buenos*días* B、*hola*buenos*días*

C、hola*buenos*días D、*hola*buenos*días*

9. ¿Cuál de las siguientes afirmaciones es incorrecta? ( )

A、dict={1:'a'} B、a={'nombre':'bob'}

C. e={[1]:'Baloncesto'} D. c={'escuela':'Escuela primaria de élite'}

10. d1={'subject':'chino','class':'Clase 2','puntuación más alta':99}

d2={'asunto':'matemáticas','clase':'clase 2','puntuación más alta':100}

d1.actualización(d2)

imprimir(d1)

¿El resultado de ejecutar el código anterior es?()

A. {'subject':'chino','class':'Clase 2','puntuación más alta':99}

B. {'subject':'chino','class':'Clase 2','puntuación más alta':100}

C. {'asunto':'matemáticas','clase':'clase 2','puntuación más alta':100}

D. {'asunto':'matemáticas','clase':'clase 2','puntuación más alta':99}

11. Si dic_color={'rojo':'rojo','verde':'verde','oro':'oro','marrón':'marrón','púrpura':'púrpura'},

¿Cuál de las siguientes opciones puede generar 'oro'? ( )

A. print(dic_color['oro']) B. print(dic_color['金色'])

C. imprimir(dic_color[2]) D. imprimir(dic_color.values[2])

12. ¿Cuál es el resultado del siguiente código? ( )

a={'sx':90,'yuwen':93,'yingyu':88,'kexue':98}

imprimir(a['sx'])

A.93 B.90 C.88 D.98

13. ¿Cuál de los siguientes no es un método para procesar diccionarios en Python? ( )

A. pop() B.replace() C.get() D.popitem()

Supongo que te gusta

Origin blog.csdn.net/weixin_44775255/article/details/128204410
Recomendado
Clasificación