基本数据类型
八大数据类型:
整型(int),浮点型(float),字符串(str),列表(list),元组(tuple),字典(dict),集合(set),布尔(bool)
- 数值类型(整数,浮点,布尔)
- 序列类型(字符串,列表,元组)
- 散列类型(字典,集合)
- 字节类型(b’123’)
可变序列:列表,集合,字典
不可变序列:字符串,元组
一.认识字典
1、概念
key-value形式,称之为键值对,把这样的数据结构称之为字典
my_dict = {}
my_dict = dict()
my_dict = {key1: value1, key2: value2,..., keyn: valuen}
2、特点
- 存放多个数据,无序
- 存放多种类型数据
- 键必须是唯一,值可以相同
- key是字符串,整数型,元组类型,value是可变和不变都可以使用
作用:可以利用key去找value
二.字典元素的操作
1、设置默认值
d = {}
d.setdefault('name', 'python')
print(d) # {'name': 'python'}
2、查询元素
dict[key]:返回指定的key对应的value值,找不到就报错
dict.get(key):返回指定的key对应的value值,找不到就返回None
d = {'name': 'python'}
print(d['name']) # python
print(d.get('name')) # python
print(d.get('age')) # None
3、修改元素
dict[key] = new_value 将指定的key的value改为new_value
d = {'name': 'python'}
d['name'] = 'java'
print(d) # {'name': 'java'}
4、添加元素
dict[key] = value 添加指定key和value值
d = {'name': 'python'}
d['age'] = 26
print(d) # {'name': 'python', 'age': 26}
5、删除元素
del dict[key] 根据指定key删除key:value键值对
d = {'name': 'python'}
del d['name']
print(d) # {}
三、对字典的操作
1、删除字典
del dict 删除字典
d = {'name': 'python'}
del d
print(d) # d未定义
2、清空字典
dict.clear() 清空字典内容
d = {'name': 'python'}
d.clear()
print(d) # {}
3、拷贝字典
用法:dict.copy()
解释:将字典拷贝一份并返回
返回:一个新字典
d = {'name': 'python'}
new_dict = d.copy()
print(new_dict ) # {'name': 'python'}
4、取出字典的值
用法:dict.pop(key)
解释:根据key返回key对应的value值,和get()方法不同,pop()会删除字典中的keyvalue
参数:key就是要取出的key键
返回:key对应的value
d = {'name': 'python', 'age': 26}
value = d.pop('name')
print(value) # python
5、取出字典中的键值对
用法:popitem()
解释:返回并删除字典中的最后一对键和值,如果字典已经为空,却调用了此方法,就报出
KeyError 异常
返回:取出的键值对(key, value)
d = {'name': 'python', 'age': 26}
print(d.popitem()) # ('age', 26)
print(d) # {'name': 'python'}
6、查询字典的所有键
用法:dict.keys()
解释:将字典中所有的key作为一个“列表”并返回
返回值:dict_keys([‘a’, ‘b’])
d = {'name': 'python', 'age': 26}
print(d.keys()) # dict_keys(['name', 'age'])
# 将键转化为列表
print(list(d.keys())) # ['name', 'age']
7、查询字典所有的值
用法:dict.values()
解释:将字典中所有的value作为一个“列表”并返回
返回值:dict_values([2, 3])
d = {'name': 'python', 'age': 26}
print(d.values()) # dict_values(['python', 26])
# 将值转化为列表
print(list(d.values())) # ['python', 26]
8、查询字典所有的键值对
用法:dict.items()
解释:将字典中所有的 key和value(一个key和value作为一个“元组“)作为一个列表并返回
返回值:dict_items([(‘a’, 2), (‘b’, 3)])
d = {'name': 'python', 'age': 26}
print(d.items()) # dict_items([('name', 'python'), ('age', 26)])
# 将键值转化为列表
print(list(d.items())) # [('name', 'python'), ('age', 26)]
9、对字典进行遍历
my_dict = {'name': 'python', 'age': 26}
for i in my_dict.keys(): # keys可以忽略
print(i) # 打印所有的key值
print(my_dict[i]) # 打印所有的value值
for key,value in my_dict.items():
print(key)
print(value)
10、字典推导式
d = {key: value for key, value in iterable}
11、字典合并的三种方式
用法:new_dict.update(other_dict)
解释:将other_dict的数据插入到new_dict中
返回:None
dict1 = {'name1': 'python'}
dict2 = {'name2': 'java'}
# 第一种
new_dict = dict(list(dict1.items()) + list(dict2.items()))
print(new_dict) # {'name1': 'python', 'name2': 'java'}
# 第二种
new_dict = dict( dict1, **dict2 )
print(new_dict) # {'name1': 'python', 'name2': 'java'}
# 第三种
my_dict = {'name1': 'mine'}
old_dict = {'name2': 'older'}
my_dict .update(old_dict)
print(my_dict ) # {'name1': 'mine', 'name2': 'older'}
来源:https://blog.csdn.net/weixin_43934369/article/details/100826594