1.字典是另一种可变数据类型,可存储任意类型对象。
无序的序列,键值对的输入顺序和在内存中的存储顺序不一致
字典中的数据存储以键值对的方式
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中
s = {}
print(s,type(s))
#创建一个空字典
#字典:key-value 键值对
s = {
'linux':[100,99,88],
'python':[190,56,78]
}
print(s,type(s)
工厂函数创建字典
d = {}
d = dict()
d = dict(a=1,b=2)
print(d,type(d))
2.字典的嵌套
student = {
'123':{
'name':'tom',
'age':18,
'score':99
},
'456':{
'name':'lily',
'age':19,
'score':100
}
}
print(student ['123'] ['name'])
3.字典元素的增加
service = {
'http':80,
'ftp':23,
'ssh':22
}
#增加一个元素
#如果key值存在,则更新对应的value值
#如果key值不存在,则添加对应的key-value值
service['https'] = 443
print(service)
service['ftp'] = 21
print(service)
#增加多个key值
service_backup = {
'tomcat':8080,
'mysql':3306
}
service.update(service_backup)
print(service)
service.update(flask=9000,dns=53)
print(service)
#如果key值存在:不做修改
#如果key值不存在:则添加对应的key-value
service.setdefault('http',9090)
print(service)
service.setdefault('oracle',44575)
print(service)
4.字典元素的删除
dict.pop(key) :通过key删除指定的元素,并且删除的元素可以被变量接收,当key存在的时候,成功删除,当key不存在的时候,直接报错
dict.popitem() 随机返回并删除字典中的一对键和值(一般删除末尾对)
dict.clear() : 清空字典内容
service = {
'http':80,
'ftp':23,
'ssh':22
}
item = service.pop('http') 过指定存在的key删除对应的元素
print(item) 删除最后一个key-value值
print(service)
#清空字典内容
service.clear()
print(service)
5.字典的查看
service = {
'http':80,
'ftp':23,
'ssh':22
}
#查看字典的key值
print(service.keys())
#查看字典的value值
print(service.values())
#查看字典的key-value值
print(service.items())
key不存在,默认返回None
key存在,default就返回defalut的值 没有就返回None
print(service.get('ftp','23')) 使用get()查看key的value值,当key存在的时候,返回对应的value值,当key不存在的时候,返回一个设定好的默认值或者None。
dict.items() # 查看字典的键值对,生成一个新的列表,新列表的每一个元素都为一个元组,改元组中存放的是一个键值对。
dict.keys() # 生成一个列表,列表中的元素为字典中的key
dict.values() # 查看字典的value值,生成一个新的列表,元素为字典中的所有value