我正在pyCharm中编程,制作一个wxPython项目(主要是从wxGlade生成的)。如果我有一些指定字符串的代码,例如:

value_label = wx.StaticText(self, wx.ID_ANY, _("Value"))

然后它抱怨 Unresolved reference '_'.有没有办法只忽略这个未解决的引用?

有帮助吗?

解决方案

您可以更改 未解决的引用 视察工作:

  • 打开 设置。.. 菜单
  • 选择 视察工作 页面
  • 搜寻 未解决的引用 并点击检查。在右下角,你应该看到一个标题为列表小部件 忽略引用.
  • 添加 _ 到名单上。

警告: 这将忽略未解析的引用 _全部 项目的源文件。这通常不是问题,因为您不太可能为您的函数使用这种名称。如果你得到一个 NameError 关于 _ 然后你已经知道你忘了打电话 gettext.install.

或者:

  • 打开有问题的文件,并将光标放在出现 _.
  • 新闻界 阿尔特+进入 打开上下文菜单(这可能取决于您选择或配置的快捷方式)。
  • 选择 忽略未解析的引用 module_name._
  • 选择 修复所有"未解决的引用"问题

我刚刚检查过,可以将其限制为只有一个模块。如果您正在使用 _ 内部模块 a 然后添加 a._ 到名单上 忽略引用 和所有的用法 _a.py 模块将被忽略,而警告将显示为误用 _ 在其他模块中。

其他提示

另一个选项是在上面包含您正在编写的类/方法/功能:

# noinspection PyUnresolvedReferences
.

在原始问题暗示中,这是i18n'd代码的一个真正的问题,最终会启动标记标有_()标记的字符串的每次出现。我的解决方案,它为一个交易数百个红旗,是将此添加到代码:

    # Keep PyCharm happy.
    _ = _
.

这个原因的一个红色标志很容易忽略,并让我想起我喜欢pycharm,它不是完美: - )。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top