dictar y establecer
dict
dict
El diccionario de nombre completo también es un diccionario
>>> sx = {'沙县拌面': 7, '蒸饺': 6, '鸭腿套餐': 12}
>>> sx['沙县拌面']
7
almacenamiento de valor clave
key
Si no hay ningún error, se informará cómo evitarlo:
-
>>> '糖醋排骨' in sx # 用in来判断key是否存在 False
-
>>> sx.get('Thomas') #使用get()方法,key不存在的话,会返回None >>> sx.get('Thomas', -1) #或者自己指定value -1
ps. Al regresar
None
, el resultado no se muestra.
pop ()
Use el método pop () para eliminar uno key
, el correspondiente value
también se eliminará
>>> d.pop('蒸饺')
6
>>> d
{'沙县拌面': 7, '鸭腿套餐': 12}
El orden en que se almacena el dict no tiene nada que ver con el orden en que se colocan las claves.
Espacio para el tiempo
dict en comparación con la lista:
dict :
- La velocidad de búsqueda e inserción es extremadamente rápida y no disminuirá a medida que la tecla aumente;
- Requiere mucha memoria y desperdicia mucha memoria.
lista:
- El tiempo para buscar e insertar aumenta con el aumento de elementos;
- Ocupa menos espacio y desperdicia menos memoria.
dict
El key
debe haber objetos inmutables
conjunto
set
Y dict
similares, sino también un conjunto key
de colección, pero no se almacenan value
.
Como no key
se puede repetir, no set
hay repetición en el medio key
.
Crear conjunto
>>> s = set([1, 2, 3])
>>> s
{1, 2, 3}
Filtrar automáticamente elementos duplicados
>>> s = set([1, 1, 2, 2, 3, 3])
>>> s
{1, 2, 3}
Agregar elemento agregar (clave)
>>> s.add(4)
>>> s
{1, 2, 3, 4}
>>> s.add(4)
>>> s
{1, 2, 3, 4} #重复添加,并不会有效果
Eliminar elemento eliminar (clave)
>>> s.remove(4)
>>> s
{1, 2, 3}
El conjunto puede considerarse como una colección en el sentido matemático (desordenado, sin elementos repetitivos), por lo que los dos conjuntos pueden realizar operaciones de intersección y unión:
>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
{2, 3}
>>> s1 | s2
{1, 2, 3, 4}
Objeto inmutable y comprensión de objeto mutable:
Variable:
>>> a = ['c', 'b', 'a']
>>> a.sort() #对a进行排序
>>> a
['a', 'b', 'c']
Inmutable:
>>> a = 'abc'
>>> a.replace('a', 'A')
'Abc'
>>> a #a并没有被改变
'abc'