初始化 Python 字典

Vaibhhav Khetarpal 2023年1月30日 2021年7月9日
  1. 在 Python 中使用文字语法初始化字典
  2. 使用 dict() 构造函数初始化 Python 字典
  3. 使用 fromkeys() 方法初始化 Python 字典
  4. 使用元组列表初始化 Python 字典
  5. 使用两个列表初始化 Python 字典
初始化 Python 字典

Python 字典是有序且可变的。字典不允许存储重复项。

在 Python 3.6 及以下版本中,字典曾经是无序的。在引入 Python 3.7+ 之后,字典被排序。

本教程将讨论在 Python 中初始化字典的不同方法。

在 Python 中使用文字语法初始化字典

可以使用大括号 {} 来创建和初始化字典,它包含键和值。

以下代码使用文字来初始化 Python 字典。

dict1 = {'X': 2, 'Y': 3, 'Z': 4}
print(dict1)

输出:

{'X': 2, 'Y': 3, 'Z': 4}

使用 dict() 构造函数初始化 Python 字典

dict() 构造函数可用于从关键字参数、单独的字典及其关键字参数或单独的键值对可迭代对象初始化字典。

我们可以在 dict() 构造函数中传递参数并创建一个字典。

以下代码使用 dict() 构造函数在 Python 中初始化字典。

dict1 = dict(X=1, Y=2, Z=3)
print(dict1)

输出:

{'X': 1, 'Y': 2, 'Z': 3}

使用 fromkeys() 方法初始化 Python 字典

如果所有键都具有相同的值,则可以使用 fromkeys() 函数。

以下代码使用 fromkeys() 方法来初始化 Python 字典。

dict1 = dict.fromkeys(['X', 'Y', 'Z'], 0)
print(dict1)

输出:

{'X': 0, 'Y': 0, 'Z': 0}

如果在语法中没有指定特定值,可以使用所有键的值初始化字典为 None

dict1 = dict.fromkeys(['X', 'Y', 'Z'])
print(dict1)

输出:

{'X': None, 'Y': None, 'Z': None}

使用元组列表初始化 Python 字典

元组列表也可用于在 Python 中初始化字典。此方法还使用 dict() 构造函数来实现这一点。

元组是有序且不可变的对象集合。它可用于在单个变量中存储多个项目。

列表类似于元组,唯一的区别是列表可以更改,而元组不允许这样做。

以下代码使用元组列表在 Python 中初始化字典。

LOT = [("X" , 5), ("Y" , 6), ("Z" , 8)]
dict1 = dict(LOT)
print(dict1)

输出:

{'X': 5, 'Y': 6, 'Z': 8}

使用两个列表初始化 Python 字典

在这种情况下,我们声明了两个列表,其中第一个列表的值用作键,第二个列表用作我们将要初始化的字典的值。

为了实现上述语句,我们可以使用 zip() 函数,该函数并行迭代两个给定的列表。

zip() 函数将为所有条目并行创建一个键值对,并将成功创建一个压缩对象,然后可以将其传递给 dict() 构造函数以创建字典。

以下代码使用两个列表在 Python 中初始化字典。

if __name__ == '__main__':
    
    L1 = ["X", "Y", "Z"]
    L2 = [5,6,8]
    dict1 = dict( zip(L1,L2) )
    print(dict1)

输出:

{'X': 5, 'Y': 6, 'Z': 8}

在这种情况下,L1 是用作键的列表,L2 用作已初始化字典的值列表。

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

相关文章 - Python Dictionary