python - 如何将字典值转换为字典集

标签 python python-3.x dictionary set

我正在尝试解决一些图形问题,但我卡在了一半。我有一个 python 集合字典,但我想将原始字典值(它们是集合)转换成一个字典,这样集合中的每个值都成为一个键,该键的另一个值为 1。我认为这就是称为嵌套字典 - 我不确定。

我遍历了 dict.values(),分配给了一个变量 xxx,并使用了 dict.fromkeys(xxx, 1) 代码,它起作用了,但是我无法将结果整合回原始词典。

这是一个字典的例子:

d = {'35': {'1', '37', '36', '71'}, '37': {'1', '35'}} 

我希望输出看起来像:

d = {35: {1 : 1, 37 : 1, 36 : 1, 71 : 1}, 37: {1 : 1, 35 : 1}} 

如果您注意到,原来的字典值已成为它们自己的字典,并且撇号 ('') 已关闭。

有人可以帮助我,或者给我指点。谢谢

最佳答案

你只需要一点列表理解:

def convert(input):
    return {key: {val: 1 for val in vals} for key, vals in input.items()}

print(convert({'35': {'1', '37', '36', '71'}, '37': {'1', '35'}}))
# {'35': {'1': 1, '37': 1, '36': 1, '71': 1}, '37': {'1': 1, '35': 1}}

关于python - 如何将字典值转换为字典集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55821038/

相关文章:

python - 如何使用 openCV 将视频导出为 .mp4?

python tkinter calender,放置数字

python - 加载到 BigQuery - 一列处理任意 json 字段(空数组、具有不同字段的字典等)

Python dataframe - 根据列删除连续的行

python - 是否可以从主文件所在的目录外部导入 python 文件?

objective-c - 如何仅添加一次 MKOverlay?

python - 在 Python 中按名称将文件组织到分类子文件夹中

python - 从文本文件中的行中剥离字符串并将列读入以列表为值的字典中

将 python 字典转换为 sqlite

java - 如何将列表/ map 与组合框一起使用