一.字典的定义
字典是一个无序的数据集合
通常输出的顺序和定义的顺序不一致
users = ['user1','user2']
passwd = ['123','456']
print(zip(users,passwd))
print(list(zip(users,passwd)))
print(dict(zip(users,passwd)))
s = {
'westos':[190,521,231],
'mysql':[100,99,88]
}
print(s,type(s))
d = dict()
print(d,type(d))
d = dict(a=1,b=2)
print(d,type(d))
字典的嵌套
students = {
'03113009':{
'name':'laoli',
'age':39,
'score':59
},
'03113010':{
'name':'westos',
'age':18,
'score':61
}
}
print(students['03113009']['name'])
所有的key的value值相同
print({}.fromkeys({'1','2'},'000000'))
二.字典的特性
d = {
'1':'a',
'2':'b'
}
print(d['1'])
字典的key值是唯一的
遍历
for key in d:
print(key)
for key in d:
print(key,d[key])
for k,v in d.items():
print(k,v)
三.字典的增加
services = {
'http':80,
'mysql':3306,
'smtp':25
}
services['ftp'] = 21 当ftp这个key值不存在,就直接添加
print(services)
services['http'] = 443 当http的这个key值存在,就更改的是value值
print(services)
添加多个key-value值
services_backup = {
'https':443,
'tomcat':8080,
'http':8080
}
services.update(services_backup)
print(services)
services.update(flask=9000,http=8000)
print(services)
setdefault添加key值
如果key值存在,不做修改
如果key值不存在,添加对应的key-value
services.setdefault('http',9090)
print(services)
services.setdefault('oracle',44575)
print(services)
四.字典的删除
services = {
'http':80,
'mysql':3306,
'smtp':25
}
del services['http']
print(services)
pop删除指定的key的key-value
如果key存在,删除,并返回删除key对应value
如果不存在,报错
item = services.pop('http')
print(item)
print(services)
popitem删除最后一个key-value值对
item = services.popitem()
print(services)
清空字典内容
services.clear()
print(services)
五.字典的查看
services = {
'http':80,
'mysql':3306,
'smtp':25
}
查看字典的key值
print(services.keys())
查看字典的value值
print(services.values())
查看字典的key-value值
print(services.items())
查看key的value值
key不存在,默认返回None
key不存在,有default,则返回default值
print(services.get('https'))
for k in services:
print(k,services[k])
get方法
如果key值存在,返回
如果不存在,默认返回None,如果需要指定返回值,传值即可
print(services.get('https','key not exist'))