Python 3:将元组转换为字典

Python 3:将元组转换为字典,python,python-3.x,dictionary,tuples,Python,Python 3.x,Dictionary,Tuples,正在尝试转换此文件: 为此: 提前感谢您的所有评论这里是一个您可以使用的方法 word_vomit = [(('best', 'cat', 'breed'), 3), (('dogs', 'wearing', 'hats'), 3), (('did', 'you', 'eat'), 2), (('cats', 'are', 'evil'), 1), (('i', 'hate', 'lists'), 1)] dict1={} for i in word_vomit: str1=""

正在尝试转换此文件:

为此:


提前感谢您的所有评论

这里是一个您可以使用的方法

word_vomit = [(('best', 'cat', 'breed'), 3), (('dogs', 'wearing', 'hats'), 3), (('did', 'you', 'eat'), 2), (('cats', 'are', 'evil'), 1), (('i', 'hate', 'lists'), 1)]
dict1={}
for i in word_vomit:
    str1=""
    str1=" ".join(i[0])
    dict1[str1]=str(i[1])
print(dict1)
输出:

{'best cat breed': '3', 'dogs wearing hats': '3', 'did you eat': '2', 'cats are evil': '1', ' i hate lists': '1'}

希望这对你有帮助

这是一种你可以使用的方法

word_vomit = [(('best', 'cat', 'breed'), 3), (('dogs', 'wearing', 'hats'), 3), (('did', 'you', 'eat'), 2), (('cats', 'are', 'evil'), 1), (('i', 'hate', 'lists'), 1)]
dict1={}
for i in word_vomit:
    str1=""
    str1=" ".join(i[0])
    dict1[str1]=str(i[1])
print(dict1)
输出:

{'best cat breed': '3', 'dogs wearing hats': '3', 'did you eat': '2', 'cats are evil': '1', ' i hate lists': '1'}
希望这对你有帮助

您可能可以使用字符串上的.join方法将元组转换为字符串

word_vomit = [(('best', 'cat', 'breed'), 3), (('dogs', 'wearing', 'hats'), 3), (('did', 'you', 'eat'), 2), (('cats', 'are', 'evil'), 1), (('i', 'hate', 'lists'), 1)]

out_dict = {}

for worditem in word_vomit:
  out_dict[" ".join(worditem[0])] = worditem[1]

print(out_dict)
可能可以对字符串使用.join方法将元组转换为字符串

word_vomit = [(('best', 'cat', 'breed'), 3), (('dogs', 'wearing', 'hats'), 3), (('did', 'you', 'eat'), 2), (('cats', 'are', 'evil'), 1), (('i', 'hate', 'lists'), 1)]

out_dict = {}

for worditem in word_vomit:
  out_dict[" ".join(worditem[0])] = worditem[1]

print(out_dict)

下面是一个使用以下选项的简明选项:

输出:

{'best cat breed': 3, 'dogs wearing hats': 3, 'did you eat': 2, 'cats are evil': 1, 'i hate lists': 1}

下面是一个使用以下选项的简明选项:

输出:

{'best cat breed': 3, 'dogs wearing hats': 3, 'did you eat': 2, 'cats are evil': 1, 'i hate lists': 1}

这也很有帮助,谢谢。我注意到,即使一次只使用两个单词,这也很有效。这也非常有用,谢谢。我注意到,即使一次处理两个单词,它也能很好地工作。由于前导空格的原因,这里的输出与所需的不匹配。我建议用沃洛克的答案。str.join是这种转换的最佳选项。此处的输出与所需的不匹配,因为前导空格。我建议用沃洛克的答案。str.join是这种转换的最佳选择。这似乎是最干净的方法,有什么理由不比像Warl0ck那样使用join更可取吗?字典理解在其他编程语言中是不常见的功能,因此它可能会让人们对Python的理解很不熟悉。TBH,这可能是我写的第一篇。但是是的,它节省了空间,而且如果您理解字典理解,这是非常清楚的。这似乎是最干净的方法,有没有理由这不会比像Warl0ck那样使用join更好?字典理解在其他编程语言中是不常见的功能,因此,仅仅对Python有一个粗略的理解可能会让人感到困惑。TBH,这可能是我写的第一篇。但是是的,它节省了空间,而且如果你理解字典的理解,这是非常清楚的。