python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python创建字典

python创建字典的几种常见方法

作者:一位代码

本文主要介绍了python创建字典的几种常见方法,包括包括直接赋值法、内置函数dict()和字典推导式,具有一定的参考价值,感兴趣的可以了解一下

python字典以“键-值对”形式存在,所有的元素放在一对大括号“{}”中;
字典中的“键”是不允许重复,“值”是可以重复的。
以下总结了3种字典的构建方法

一、直接赋值法

使用=将一个字典赋值给一个变量,即可以创建一个字典变量。

# # 直接赋值
a = {}
b = {'a': 1, 2: 'a', 1: 2, "b": 1, '''c''': 1}
print('空字典:', a, type(a))
print('字典b:', b, type(b))

空字典:{} <class ‘dict’>
字典b :{‘a’: 1, 2: ‘a’, 1: 2, ‘b’: 1, ‘c’: 1}<class ‘dict’>
注:字典中使用单引号、双引号、三引号都可以,这点跟json格式数据不同,json格式数据只能使用双引号。

二、内置函数dict()

使用内置函数dict快速创建字典

**用法1:**创建空字典

# 内置函数dict()
a = dict()
print(a, type(a))

结果:{} <class ‘dict’>

**用法2:**将2个列表格式数据组合成字典

# 将2个列表数据组合成字典
keys = ['a', 'b', 'c']
values = [1, 2, 3]
dict1 = dict(zip(keys, values))
print('结果:', dict1)

结果:{‘a’: 1, ‘b’: 2, ‘c’: 3}
注:使用此方法组合字典时,要保证2个列表的长度一样。

**用法3:**根据给定的“键-值对”创建字典

# 根据给定的键值对创建字典
dict1 = dict(a=1, b=2, c=3, d='a')
print('结果:', dict1)

结果:{‘a’: 1, ‘b’: 2, ‘c’: 3, ‘d’: ‘a’}

**用法4:**给定内容为“键”,创建“值”为空的字典

# # 给定内容为键,创建值为空的列表
dict1 = dict.fromkeys(['a', 'b', 'c'])
dict2 = dict.fromkeys({'a', 'b', 'c'})
dict3 = dict.fromkeys(('a', 'b', 'c'))
print('结果1:', dict1)
print('结果2:', dict2)
print('结果3:', dict3)

结果1:{‘a’: None, ‘b’: None, ‘c’: None}
结果2:{‘c’: None, ‘b’: None, ‘a’: None}
结果3:{‘a’: None, ‘b’: None, ‘c’: None}
注:dict.fromkeys()里面值类型可以是列表、集合、元组。

**用法5:**创建所有“键”对应的“值”相同的字典

# 创建所有键对应的值相同的字典
dict1 = dict.fromkeys(['a', 'b', 'c'], 1)
dict2 = dict.fromkeys(['a', 'b', 'c'], [1,2])
print('值全为1的字典:', dict1)
print('值全为[1,2]的字典:', dict2)

值全为1的字典:{‘a’: 1, ‘b’: 1, ‘c’: 1}
值全为[1,2]的字典:{‘a’: [1, 2], ‘b’: [1, 2], ‘c’: [1, 2]}

三、字典推导式

使用字典推导式创建字典

# 使用字典推导式创建字典
dict1 = {key:values for (key, values) in []}
dict2 = {key: values for (key, values) in zip(['a', 'b', 'c'], [1, 2, 'a'])}
print('结果1:', dict1)
print('结果2:', dict2)

结果1:{}
结果2:{‘a’: 1, ‘b’: 2, ‘c’: ‘a’}

以上就是构建python字典的常见用法,可根据实际需求选择不同的用法。更多相关python创建字典内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文