Con*_*ice 5 python dictionary-comprehension set-comprehension f-string
在python 3.6+中的f字符串中是否可能有字典或设置理解力?
在语法上似乎是不可能的:
names = ['a', 'b', 'c']
pks = [1, 2, 3]
f"{{name : pk for name, pk in zip(names, pks)}}"
Run Code Online (Sandbox Code Playgroud)
这将返回:
{name : pk for name, pk in zip(names, pks)}
Run Code Online (Sandbox Code Playgroud)
这是预期的行为,双括号会在输出中产生文字括号,因为不对表达式求值。
有没有人找到一种解决方法来允许在f字符串内部进行字典/集合理解?
Lar*_*erg 10
正如@vaultah 评论的那样:
添加空格,它们在语法上是必需的,不会出现在结果字符串中:
names = ['a', 'b', 'c']
pks = [1, 2, 3]
f"{ {name: pk for name, pk in zip(names, pks)} }"
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
570 次 |
最近记录: |