字典
字典是以键值对的形式存在的 key:value,键是不可变的唯一的,值不是
dict():创建一个空子典
a = {}:也是创建一个空子典
dict_object={}
dict_object. clear ():清空字典
del dict_object:删除字典
字典的特性
- 字典的值可以是任何 python 对象,也可以是标准对象,也可以是用户定义的,但是键不行
- 两个重要的特性
- 同一个键不允许出现两次,如果同一个键出现两次,那么取值会取最后一个值
- 键必须不可变,所有可以用数字,字符去,元组充当,列表不行
- len (dict):计算字典元素个数,即键的总数
- str(dict):将字典转换成字符串
- type(dict):返回字典类型 class dict
字典内置方法
- dict. clear ():清空字典
- dict. copy ():浅复制字典
- dict. fromkeys ():创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值
# dict.fromkeys('sep', value)
# fromkeys的第一个值sep是一个不可变的序列,value是值
# 将序列里面的每一个值作为键key,将value作为值value
# fromkeys不指定值默认为none
sep = ('name','age','cs')
dict1 = dict.fromkeys(sep)
print(str(dict1))
# 值{'name': None, 'age': None, 'cs': None}
dict3 = dict.fromkeys(sep)
print(dict3)
dict2 = dict.fromkeys(sep, 10)
print(dict2)
- dict. get (key, default=None):返回指定键的值,如果键不再字典中返回 default 设置的默认值
- key in dict:如果键在字典中则返回 true,否则返回 false
- dict. items ():以列表返回一个视图对象
# dict.keys()\dict.values()\dict.items(),返回的都是视图对象
# 视图对象不是列表不支持索引,但是可以通过list()进行转换
# 不能对视图对象进行修改,因为视图对象都只是可读的
dict1 = {'name':'zhangsan', 'age': 18}
print(dict1.items)
# <built-in method items of dict object at 0x000001E644A2FA80>
print(dict1.items())
# dict_items([('name', 'zhangsan'), ('age', 18)])
- dict. keys ()与 dict. values ()
dict1 = {'name':'zhangsan', 'age': 18}
print("这是keys():",dict1.keys())
print("这是values():",dict1.values())
print("通过list转换")
list_keys=list(dict1.keys())
print("keys转换成list:",list_keys)
list_values= list(dict1.values())
print("values转换成list:",list_values)
- dict. setdefalut (key, defalut=None)
- 与 get()类似,但如果键不存在与字典中,会将添加键值设置为 defalut
- dict. update (dict 2):将字典的键值对更新到 dict 中
- pop (key[, defalut]):删除字典 key 所对应的值,返回被删除的值
- popitem ():返回并删除字典中的最后一对键和值

浙公网安备 33010602011771号