8.1、字典:
1、字典元素用大括号括起来,用逗号分割每个元素,字典元素是"key:value"的形式
dic = {
"k1": 'v1', #键值对
"k2": 'v2'
}
2、字典的特点:
(1)字典元素key的值是唯一的,可变数据类型不可作为字典的key,
"列表"、"字典"、"集合"、不能作为字典元素的key
(2)字典元素"value"的数据类型可以是任意的
(3)字典元素"value"可以嵌套任何数据类型
(4)字典元素"value"可以重复
(5)字典是可变的数据类型(可以增加,删除,修改元素)
(6)字典元素是有序排列的
(7)字典元素可以使用for循环进行遍历
8.2、字典用法:
info = {
"k1": 18,
2: True,
"k3": [
11,
[],
(),
22,
33,
{
'kk1': 'vv1',
'kk2': 'vv2',
'kk3': (11,22),
}
],
"k4": (11,22,33,44),
True: "123",
(11,22): 123
}
1、根据序列,创建字典,并指定统一的值:
v = dict.fromkeys(["k1",123,"999"],123)
print(v)
2、根据Key获取值,当key不存在时返回指定的值,默认值是None:
v = info.get('k12',100)
print(v)
3、根据key删除value值,并获得该值,当key不存在时返回指定的值:
dic = {
"k1": 'v1',
"k2": 'v2'
}
v = dic.pop('k1',100)
print(dic,v)
k,v = dic.popitem()
print(dic,k,v)
#删除最后一个key-value值
4、设置值:
已存在,不设置,获取当前key对应的值
不存在,设置,获取当前key对应的值
dic = {
"k1": 'v1',
"k2": 'v2'
}
v = dic.setdefault('k3','123')
print(dic,v)
5、更新字典,key存在不设置,key不存在设置:
dic = {
"k1": 'v1',
"k2": 'v2'
}
dic.update({'k1': '111111','k3': 123})
print(dic)
#dic.update(k1=123,k3=345,k5="asdf")
#print(dic)
6、索引方式找到指定元素:
v = info['k1']
print(v)
v = info['k3'][5]['kk3'][0]
print(v)
7、字典支持 del 删除:
del info['k1']
del info['k3'][5]['kk1']
print(info)
8、通过for循环遍历字典中的元素:
(1)遍历key值:
for item in info.keys():
print(item)
(2)遍历key对应的value值:
for item in info.keys():
print(item)
(3)同时遍历key值和key对应的value值:
for k,v in info.items():
print(k,v)
9、小结,常用方法:
get/update/keys/values/items
判断key值是否在字典中
dic = {
"k1": 'v1'
}
v = "k1" in dic
print(v)