Python中字典的概念和构造方法

207 阅读2分钟

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'}
<class 'dict'>

注意:字典中的键不能重复

dict1 = {'name''Tom''age'18'name''python'}
print(dict1)
返回结果:
{'name': 'python', 'age': 18}

注意:字典中的键只能是不可变数据类型

dict1 = {(123): 'Tom''age'18'name''python'}
print(dict1)
dict1 = {[123]: '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 = [123]
a = dict(zip(keys, values))