Python中的字典在其他语言中有不同的称呼,比如JS中叫做对象,PHP中叫做数组等等,各有各的称呼,但是个人觉得字典这个名称比较合适,字典反映了这种数据类型的特性,表示通过某个值去查找另一个值。python中的字典就是通过一个键查找一个值,在后面的数据库的表对象查找的时候也是使用类似的方法,JSON数据的查找也是类似方法......
字典的作用:
- 1.通过有意义的键查找目标数据;
- 2.查询效率会提高,类似于汉语字典
字典是一种无序且可变的键值对集合,也是数据类型的一种,字典中的键和值是一一对应的映射关系。本章节的字典学习是十分重要的,对于后面很多知识的学习都有帮助,下面我们就来看看字典的构造方法。
字典的构造方法:
1.直接创建一个键值对数据集合——字典
dict1 = {'name': 'Tom', 'age': 18, 'love': 'python'}
print(dict1, type(dict1))
返回结果:
{'name': 'Tom', 'age': 18, 'love': 'python'}
注意:字典中的键不能重复
dict1 = {'name': 'Tom', 'age': 18, 'name': 'python'}
print(dict1)
返回结果:
{'name': 'python', 'age': 18}
注意:字典中的键只能是不可变数据类型
dict1 = {(1, 2, 3): 'Tom', 'age': 18, 'name': 'python'}
print(dict1)
dict1 = {[1, 2, 3]: 'Tom', 'age': 18, 'name': 'python'}
print(dict1)
返回结果:
{(1, 2, 3): 'Tom', 'age': 18, 'name': 'python'}
TypeError: unhashable type: 'list'
2.使用formkeys()创建字典
dict2 = dict.fromkeys('python', 'JavaScript')
# 第一个参数是可迭代数据,第二个是值,不写为None
print(dict2)
返回结果:
{'p': 'JavaScript', 'y': 'JavaScript', 't': 'JavaScript', 'h': 'JavaScript', 'o': 'JavaScript', 'n': 'JavaScript'}
3.dict()创建字典
# 3.dict()
# a = dict(str1=value1, str2=value2, str3=value3)
# 方式1
demo1 = [('name', 'Tom'), ('age', 18), ('sex', '男')]
# 方式2
demo2 = [['name', 'Tom'], ['age', 18], ['sex', '男']]
# 方式3
demo3 = (('name', 'Tom'), ('age', 18), ('sex', '男'))
# 方式4
demo4 = (['name', 'Tom'], ['age', 18], ['sex', '男'])
a1 = dict(demo1)
a2 = dict(demo2)
a3 = dict(demo3)
a4 = dict(demo4)
keys = ['one', 'two', 'three']
values = [1, 2, 3]
a = dict(zip(keys, values))
文章来源:www.wakey.com.cn/document-dict-structure.html