python - 如何在不创建任何新变量的情况下在字典理解中解压缩元组的值?

标签 python python-3.x dictionary tuples dictionary-comprehension

<分区>

我有一个包含多个子元组的元组,固定长度为 2,每个子元组有两个字符串值。

注意:这些子元组的长度和值类型永远不会改变。

我想在字典理解中使用子元组,如下所示:

{sub_tuple for sub_tuple in main_tuple}

问题是,我得到:

{(w, x), (y, z)}

代替:

{w: x, y: z}

如何在不创建任何额外变量的情况下让它工作?

例如,我如何避免做这样的事情:

x = {}
for sub_tuple in main_tuple:
  x[sub_tuple[0]] = sub_tuple[1]
# do whatever with x...

最佳答案

你应该能够做到:

x = {
    key: value
    for key, value in main_tuple
}

更简单的,你可以做 x = dict(main_tuple)

关于python - 如何在不创建任何新变量的情况下在字典理解中解压缩元组的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55314135/

相关文章:

从数据库中检索 url 并使用 webbrowser() 打开它时出现 Python 错误

python-3.x - SqlAlchemy - 多对多外连接,带有连接条件

python - 检查 dict 中的键返回 false 即使键存在

python - 从列表中删除字典

python - 按值对多维字典进行排序并在 Python 中返回新排序的字典

python - 如何在 Python 正则表达式中将字符后跟空格分组?

python - python 子进程模块古怪吗?

python - 写入 Excel 时“Unsparsify” Pandas 多索引

python - 试图将一个字符串分成 5 个 block

python - 创建新字典以首先对键进行排序,然后对值进行排序