【发布时间】:2018-08-13 16:16:24
【问题描述】:
在 python 3.6+ 中是否可以在 f 字符串中包含字典或集合理解?
这在语法上似乎是不可能的:
names = ['a', 'b', 'c']
pks = [1, 2, 3]
f"{{name : pk for name, pk in zip(names, pks)}}"
这将返回:
{name : pk for name, pk in zip(names, pks)}
这是预期的行为,双括号导致输出中的文字括号,因为表达式未计算。
有没有人找到一种解决方法来允许在 f 字符串中进行字典/集合理解?
【问题讨论】:
-
括号、空格、……
-
@vaultah 只有前导空格是必不可少的,尽管尾随空格可能有利于对称
-
空格和括号似乎有效,但省略号无效:)
标签: python dictionary-comprehension f-string set-comprehension