Python提供了多种方式构造字典,其中通过dict()
函数和{}
语法糖的方式最常用。本文将详细讲解这两种方式构造字典的方法。
通过dict()函数构造字典
dict()
函数可以将任意可迭代的对象转换为字典。其中,可迭代的对象可以是列表、元组或其他序列类型,每个元素必须包含两个值,第一个值表示字典的键,第二个值表示字典的值。
下面是一个示例,通过dict()
函数从包含键值对元组的列表中构造字典:
data = [('a', 1), ('b', 2), ('c', 3)]
d = dict(data)
print(d) # {'a': 1, 'b': 2, 'c': 3}
在以上示例代码中,首先定义了一个包含键值对元组的列表data
,然后通过dict()
函数从这个列表中构造了一个字典,输出结果为:{'a': 1, 'b': 2, 'c': 3}
。
除了通过列表构造字典,还可以通过元组、集合等其他可迭代的对象来构造字典。例如:
tuple_data = (('a', 1), ('b', 2), ('c', 3))
set_data = {('a', 1), ('b', 2), ('c', 3)}
d1 = dict(tuple_data)
d2 = dict(set_data)
print(d1) # {'a': 1, 'b': 2, 'c': 3}
print(d2) # {'a': 1, 'b': 2, 'c': 3}
以上示例代码中,分别使用了元组和集合作为dict()
函数的参数,结果与列表相同,输出{'a': 1, 'b': 2, 'c': 3}
。
通过{}语法糖构造字典
Python中,{}
常被用于创建字典,它的语法类似于set或集合。如果这样使用{}
,则创建的是空字典,如下所示:
d = {}
如果需要在创建空字典时同时填充数据,则需要在{}
内部使用键值对的方式来填充数据,每个键值对之间用逗号分隔,例如:
d1 = {'a': 1, 'b': 2, 'c': 3}
d2 = {'one': 1, 'two': 2, 'three': 3}
上述示例中,分别使用了两个字典,通过{}
的方式构造,分别为{'a': 1, 'b': 2, 'c': 3}
和{'one': 1, 'two': 2, 'three': 3}
。这种方式非常直观和简单,适合于创建小型字典。
此外,也可以使用zip()
函数创建字典,这种方式与使用列表、元组或集合类似:
keys = ['a', 'b', 'c']
values = [1, 2, 3]
d = dict(zip(keys, values))
print(d) # {'a': 1, 'b': 2, 'c': 3}
以上示例代码中,首先创建了两个列表keys
和values
,其中keys
包含字典的键,values
包含字典的值,然后使用zip()
函数将这两个列表以元组的形式配对,最后通过dict()
函数将配对后的列表转换为字典,输出结果为:{'a': 1, 'b': 2, 'c': 3}
。
总结:
通过dict()
函数和{}
语法糖的方式可以方便地创建字典,其中使用zip()
函数可以将两个可迭代对象合并为一个字典。对于小型字典来说,更推荐使用{}
语法糖的方式。对于大型字典,可以优先考虑dict()
函数的方式。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 通过dict(zip)和{}的方式构造字典的方法 - Python技术站