- 字典的创建
1.1 字典的定义
字典:key-value 键值对存储的一种数据结构
value值可以是任意数据类型:int float long list tuple set dict
d = {}
print(type(d))
运行;
d1 = {
‘tiffniy’:[16,‘男’,‘highschool’],
‘lucky’:[8,‘女’,‘小学’]
}
print(d1)
print(d1[‘tiffniy’])
d2 = {
‘a’:{1,2,3},
‘b’:{4,5,6}
}
print(d2)
print(d2[‘a’])
d3 = {
‘a’:1,
‘b’:2
}
print(d3)
运行;
1.2 字典的嵌套:
d4 = {
‘1701210175’:{
‘name’:‘CY’,
‘身高’:‘180cm’,
‘体重’:‘46kg’
},
‘1701210177’:{
‘name’:‘XH’,
‘身高’:‘175cm’,
‘体重’:‘50kg’
}
}
print(d4[‘1701210177’])
print(d4[‘1701210177’][‘name’])
运行:
1.3 工厂函数;
工厂函数
d5 = dict(a=1,b=2)
print(d5)
运行:
- 字典的特性
d = {
‘1’:‘a’,
‘2’:‘b’,
‘3’:‘a’
}
print(d[‘1’])
运行;
2.1 字典不支持索引
字典不支持索引
print(d[0])
运行报错:
2.2 字典不支持切片
print(d[::-1]
运行报错;
2.3 字典的重复和连接是无意义的,字典的key值唯一
成员操作符:判断的是某个值是否为字典岁的key值
>print(‘1’ in d)
print(‘1’ not in d)
运行:
2.4 遍历字典
字典for循环,默认遍历字典的key值
for key in d:
print(key)
运行:
遍历字典:
for key in d:
print(key,d[key])
运行:
- 字典的增加
services = {
‘http’: 80,
‘ftp’: 21,
‘ssh’: 22
}
3.1 增加一个元素
1).如果key值存在,则更新对应的value值
2).如果key值不存在,则添加对应的key-value值
代码:
services[‘mysql’] = 3306
print(services)
services[‘http’] = 443
print(services)
运行:
3.2 添加多个key-value值
1).如果key值存在,则更新对应的value值
2).如果key值不存在,则添加对应的key-value值
代码:
service_backup = {
‘tomcat’:8080,
‘https’:443,
‘http’:8888
}
services.update(service_backup)
print(services)
services.update(flask=9000,http=999)
print(services)
运行:
3.3 setdefault添加key值:
1).如果key值存在,则不做修改
2).如果key值不存在,则添加对应的key-value值
代码:
services.setdefault(‘http’,9000)
print(services)
services.setdefault(‘oracle’,44575)
print(services)
运行:
- 字典的删除
services = {
‘http’: 80,
‘ftp’: 21,
‘ssh’: 22,
‘mysql’:3306
}
4.1 del 关键字
del services[‘http’]
print(services)
运行:
4.2 pop删除指定的key的key-value值
1.)如果key存在,删除,并且返回删除key对应的value值
2.)如果key不存在,直接报错
代码:
item = services.pop(‘http’)
print(item)
print(services)
运行:
4.3 popitem删除最后一个key-value
item = services.popitem()
print(‘删除的key-value对应的是:’,item)
print(services)
运行:
4.4 清空字典内容
services.clear()
print(services)
运行:
- 字典的修改与查看
service = {
‘http’:80,
‘mysql’:3306
}
5.1 查看字典的key’值
print(service.keys())
运行:
5.2 查看字典里面的所有value值
print(service.values())
运行:
5.3 遍历字典
for k,v in service.items():
print(k,’---->’,v)
for k in service:
print(k,’---->’,service[k])
运行:
5.4 查看指定的key值对应的value值
key值不存在,程序会报错
print(service[‘http’])
print(service[‘https’]
运行:
5.5 get 方法获取指定key对应的value值
如果key值存在,返回对应的value值
如果key值不存在,默认返回None,如果需要指定返回的值,传值即可
print(service.get(‘https’))
运行: