我有一个在Eclipse中使用PyDev的python项目。对于下面的示例代码,
var = 'element'
width = 11
print(f'{var:>{width}}')
执行该代码,以正确的对齐方式输出所需的输出element
,并且没有错误。
但是,PyDev解析此代码引发错误,错误为>
字符和错误消息SyntaxError: Unbalanced '{'
。但是自版本6.3.1(#PyDev-884)起,PyDev确实在f字符串中支持双括号。如果删除此>
字符,则字符串以“左对齐”打印(我不希望),并且PyDev不会引发任何错误。这确认PyDev确实支持双括号,但是错误消息不正确。
另一方面,用于f字符串的PEP 498没有提及有关使用f字符串进行对齐的任何内容。对齐是f字符串语法的一部分吗?如果是PEP指南中未提及的原因,为什么PyDev解析器会引发错误?
谢谢!
答案 0 :(得分:0)
这是PyDev中的一个问题(不幸的是,https://www.python.org/dev/peps/pep-0498/没有提供f字符串的语法,并且对预期的解析方式非常轻巧-我将更新PyDev以涵盖所提供的示例)。