首页 >后端开发 >Python教程 >如何在 Python 字典中存储重复的键?

如何在 Python 字典中存储重复的键?

Susan Sarandon
Susan Sarandon原创
2024-12-21 09:42:15412浏览

How Can I Store Duplicate Keys in a Python Dictionary?

在 Python 字典中存储重复键

Python 本身不支持使用重复键创建字典。根据设计,字典将唯一的键与相应的值相关联。

但是,您可以使用某些技术来解决此限制。一种方法是在字典中存储列表或集合。

使用默认字典

从集合模块导入的默认字典是为不存在的键返回默认值的字典。您可以初始化默认字典来存储列表或集合,从而允许您将多个值与同一个键关联:

from collections import defaultdict

data_dict = defaultdict(list)

操作默认字典项

要存储与键关联的值,将它们附加到默认字典中的列表中:

regNumber = "ABC234"
details = ("Fred Greenside", "2345", "AgHort_Parking")
data_dict[regNumber].append(details)

示例代码

这里是修改后的您的代码版本,使用默认字典来存储注册号及其关联数据:

from collections import defaultdict

data_dict = defaultdict(list)

with open("ParkingData_Part3.txt") as file:
    data_list = [lines.split(",") for lines in file.readlines()]

for line in data_list:
    regNumber = line[0]
    name = line[1]
    phoneExtn = line[2]
    carpark = line[3].strip()
    details = (name, phoneExtn, carpark)
    data_dict[regNumber].append(details)

print(data_dict)

此代码将创建一个字典,其中注册号是键,每个键映射到关联值列表。

以上是如何在 Python 字典中存储重复的键?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn