# 字典,字典是另一种可变容器模型,且可存储任意类型对象。标签:info,14,Python,dic,item,k1,print,字典 From: https://www.cnblogs.com/liu-zhijun/p/18340864
# 字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中
# dict
# 字典是无序的
# info [ˈɪnfəʊ] 信息
info = {
'k1': "v1",
'k2': "v2"
}
# 字典的value可以是任何值
info = {
'k1': 18,
'k2': True,
'k3': [11,
22,
33,
{
'kk1': 'vv1',
'kk2:': 'vv2',
'kk3': (11, 22), # v2取值11
}
],
'k4': (55, 66, 77, 88)
}
print(info)
v = info['k1']
print(v)
v2 = info["k3"][3]['kk3'][0] # 索引的方式找到指定的元素,但是无法通过切片找到因为是无序的
print(v2, -7)
for item in info:
print(item) # for循环
for item in info.keys():
print(item) # for循环得到key
for item in info.values():
print(item) # for循环得到value
for item in info.keys():
print(item, info[item]) # for循环得到key,打印value
for k, v in info.items():
print(k, v) # for循环得到key,打印value
info = {
3: "fasdfasd",
'm2': "kjhkhg",
True: 'dfwj', # 布尔值可以做为字典的key 但是要主要注意 True 1 false 0 ,key值相同的时候只能保留一个
# [11,22]:125 #列表不能做为字典的key ,unhashable,无法被用作哈希表的键值(或字典的键)。
# {'k1':'v1'}:689 #字典不能做为字典的key
}
v = info[3]
print(v)
del info['m2'] # 字典支持del删除,也可以del info["k3"][3]['kk3'][0]
print(info)
v = dict.fromkeys(['k1', 123, '999'], 456) # 根据序列,创建字典,并且指定统一的值
print(v)
dic = {
'k1': 'v1'
}
v = dic['k1']
print(v)
dic = {
'k1': 'v1'
}
v=dic.get('k1')
print(v)
dic = {
'k1': 'v1'
}
v=dic.get('k111',22222) #根据key获取值,key不存在时,可以指定默认值(None)
print(v)
dic = {
'k1': "v1",
'k2': "v2"
}
v=dic.pop('k1') #删除
print(dic,v)
dic = {
'k1': "v1",
'k2': "v2"
}
v=dic.pop('k111',90)
print(dic,v)