字典是一个重要的数据类型,存储的是键值对{key:Value}, 键不可重复,值可以重复。
首先使用dir( ) 所有的方法和属性:
print(dir(dict))
[’__class__’, ‘__class_getitem__’, ‘__contains__’, ‘__delattr__’, ‘__delitem__’, ‘__dir__’, ‘__doc__’, ‘__eq__’, ‘__format__’, ‘__ge__’, ‘__getattribute__’, ‘__getitem__’, ‘__gt__’, ‘__hash__’, ‘__init__’, ‘__init_subclass__’, ‘__ior__’, ‘__iter__’, ‘__le__’, ‘__len__’, ‘__lt__’, ‘__ne__’, ‘__new__’, ‘__or__’, ‘__reduce__’, ‘__reduce_ex__’, ‘__repr__’, ‘__reversed__’, ‘__ror__’, ‘__setattr__’, ‘__setitem__’, ‘__sizeof__’, ‘__str__’, ‘__subclasshook__’, ‘clear’, ‘copy’, ‘fromkeys’, ‘get’, ‘items’, ‘keys’, ‘pop’, ‘popitem’, ‘setdefault’, ‘update’, ‘values’]
任何属性或方法都可以使用Help() 函数查看:
例如:print(help(dict.values))
Help on method_descriptor:
values(…)
D.values() -> an object providing a view on D’s values
None
- 可变;
- 可存储任意数量的对象;
- 可以存储任何数量类型;
- 存储的形式键值对, Key:Value
创建空字典
myDict = { }
创建2个元素的字典
myDict2 = {“K1”: “V1”, “K2”: “V2”}
键值对使用冒号 :分隔,每一对键值对使用逗号 ,分隔
# 访问字典
print(myDict2[‘K1’]) # 输出 V1
使用具体的键访问对应得值
遍历所有得值,使用Values()
for v in myDict2.values():
print(v)
遍历键,使用Keys()
for k in myDict2.keys():
print(k)
同时遍历键值对,使用items()
for k, v in myDict2.items():
print(k, ‘-’, v)
print(len(myDict2))
浅Copy
copy_d = myDict2.copy()
print(copy_d)
输出:{‘K1’: ‘V1’, ‘K2’: ‘V2’} 和被复制得键值对完全一样
copy_d[‘K1’] =“OK”
print(copy_d)
print(myDict2)
输出:
{‘K1’: ‘OK’, ‘K2’: ‘V2’}
{‘K1’: ‘V1’, ‘K2’: ‘V2’}
修改复制得值,被复制得字典不会改变
方式1:del
del copy_d[‘K1’]
print(copy_d)
# 输出:{‘K2’: ‘V2’} 将键K1的值删除了
方式2: Pop( )
v = copy_d.pop(‘K1’)
print(v) # V1 返回键K1对应得值,并删除
print(copy_d)
输出:{‘K2’: ‘V2’} 删除后得字点只有一对键值对
字典的基本功能如上,其它任何属性和方法都可依据 dir( ),Help()获取帮助信息。