Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将字典值转换为字典集_Python_Python 3.x_Dictionary_Set - Fatal编程技术网

Python 如何将字典值转换为字典集

Python 如何将字典值转换为字典集,python,python-3.x,dictionary,set,Python,Python 3.x,Dictionary,Set,我正试图解决一些图形问题,但我半途而废。我有一个集的python字典,但我想将原始字典值(即集合)转换成一个字典,这样集合中的每个值都将成为另一个值为1的键。我想这就是所谓的嵌套字典——我不确定 我循环了dict.values(),分配给变量xxx,并使用dict.fromkeys(xxx,1)代码,它工作了,但我无法将结果集成回原始字典 下面是一个字典示例: d = {'35': {'1', '37', '36', '71'}, '37': {'1', '35'}} 我希望输出看起来像:

我正试图解决一些图形问题,但我半途而废。我有一个集的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转换(输入):
返回{key:{val:1代表val中的val}返回键,val代表input.items()中的val}
打印(转换({'35':{'1','37','36','71'},'37':{'1','35'}))
# {'35': {'1': 1, '37': 1, '36': 1, '71': 1}, '37': {'1': 1, '35': 1}}

你就快到了。只需使用
int
包装键和值即可:

{int(k):dict.fromkeys(map(int, v), 1) for k, v in d.items()}
输出:

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

繁荣谢谢。我改为int(key)和int(val),将字符串项转换为整数。感谢你的宝贵贡献。