字典
开始学习
1.什么是字典
与小时候用的字典类似,每个字都有对应的解释,python的字典里分为键值和值,两者之间用:连接。
2.字典的定义
字典与列表、元组不同,其外层用的是大括号{}。不同的键值和值用 , 连接。
但是字典是无序的,即他不存在索引值。
dic = {} # 空字典
dic1 = {'name': 'Ice-冰鸽', 'age': 0, 'country': 'China'} # 常规定义
dic2 = dict(name='Ice-冰鸽', age=0, country='China') # 使用dict函数定义字典
print(dic1['name']) # 通过键值取值 Ice-冰鸽
print(dic2['name']) # 通过键值取值 Ice-冰鸽
3.字典的增
通过setdefault函数可以实现对字典元素的添加,其返回值为字符串
口诀:无则增,有则查
dic = {'name': 'Ice-冰鸽', 'age': 0, 'country': 'China'}
str1 = dic.setdefault('name', 'Ice') # 有则查
print(str1) # Ice-冰鸽
str1 = dic.setdefault('nam', 'Ice') # 无则增
print(str1) # Ice
print(dic) # {'name': 'Ice-冰鸽', 'age': 0, 'country': 'China', 'nam': 'Ice'}
当然根据键值赋值也可以实现改,将在字典的改详细说明。
4.字典的删
python可以用pop、popitem函数实现元素的删除。
dic = {'name': 'Ice-冰鸽', 'age': 0, 'country': 'China'}
str1 = dic.pop('name') # 去除指定键值和对应的值,返回对应值
print(str1) # Ice-冰鸽
str1 = dic.popitem() # 去除最后一次添加进字典的元素,并以元组形式返回该元素
print(str1) # ('country', 'China')
print(dic) # {'age': 0}
5.字典的改
通过对键值直接赋值修改内容。口诀:有则改,无则增
dic = {'name': 'Ice-冰鸽', 'age': 0, 'country': 'China'}
dic['name'] = 'Ice' # 有则改
print(dic) # {'name': 'Ice', 'age': 0, 'country': 'China'}
dic['nam'] = 'Ice' # 无则增
print(dic) # {'name': 'Ice', 'age': 0, 'country': 'China', 'nam': 'Ice'}
6.字典的查
在字典的定义中我们已经接触到字典可以通过键值查找值,但是他存在报错的缺点。
dic = {'name': 'Ice-冰鸽', 'age': 0, 'country': 'China'}
str1 = dic['name']
print(str1) # Ice-冰鸽
str1 = dic.get('n')
# 用get函数如果查找不到值会返回空字符串而不会报错
print(str1) # None
和列表等字典也有清空的函数是clear函数
dic.clear()
7.字典的其他方法
7.1取出所有键值
通过keys函数可以取出所有键值,返回值是字典键值类型。
dic = {'name': 'Ice-冰鸽', 'age': 0, 'country': 'China'}
a = dic.keys() # 取出字典中的所有键值
print(a) # dict_keys(['name', 'age', 'country'])
print(type(a)) # <class 'dict_keys'>
7.2取出所有值
同理用values函数可以取出所有值。
dic = {'name': 'Ice-冰鸽', 'age': 0, 'country': 'China'}
a = dic.values() # 取出字典中的所有值
print(a) # dict_values(['Ice-冰鸽', 0, 'China'])
print(type(a)) # <class 'dict_values'>
7.2取出所有键值对
dic = {'name': 'Ice-冰鸽', 'age': 0, 'country': 'China'}
a = dic.items() # 取出字典中的所有键值对
print(a) # dict_items([('name', 'Ice-冰鸽'), ('age', 0), ('country', 'China')])
print(type(a)) # <class 'dict_items'>
结束语
喜欢的话可以点赞转发加关注,后续会更新其他python学习内容。当然这也是我现学的内容,所以更新速度不会很快,但是我也会尽快更新。
ps:现在关注我,以后就是老粉啦!!!
下篇预告
下篇预告:集合。