在PyDev Eclipse中解析F字符串的语法错误

时间:2018-06-20 14:50:35

标签: python eclipse python-3.6 pydev f-string

我有一个在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解析器会引发错误?

  1. Python:3.6.3
  2. PyDev:6.3.3
  3. Eclipse:Oxygen.2(4.7.2)

谢谢!

1 个答案:

答案 0 :(得分:0)

这是PyDev中的一个问题(不幸的是,https://www.python.org/dev/peps/pep-0498/没有提供f字符串的语法,并且对预期的解析方式非常轻巧-我将更新PyDev以涵盖所提供的示例)。