我在pyCharm中编程创建一个wxPython项目(主要是从wxGlade生成)。如果我有一些代码指定一个字符串,例如:
value_label = wx.StaticText(self, wx.ID_ANY, _("Value"))
然后抱怨Unresolved reference '_'
。有没有办法只忽略这个未解决的参考?
答案 0 :(得分:10)
您可以更改 Unresolved reference 检查的设置:
_
添加到列表中。 警告:这会忽略项目的所有源文件中未解析的引用_
。这通常不是问题,因为您不太可能将这种名称用于您的功能。如果您收到关于NameError
的{{1}},那么您已经知道忘了拨打_
。
可替换地:
gettext.install
。_
我刚检查过,可以将此限制为仅限模块。如果您在模块module_name._
中使用_
,请将a
添加到列表忽略参考以及a._
中_
的所有用法}模块将被忽略,而警告将显示在其他模块中误用a.py
。
答案 1 :(得分:0)
正如最初的问题所暗示的那样,这对于i18n代码来说是一个真正的问题,它最终会标记每个出现的标有_()的字符串。我的解决方案是将数百个红旗换成一个,将其添加到代码中:
# Keep PyCharm happy.
_ = _
这导致的一个红旗很容易忽略,并不断提醒我,虽然我喜欢PyCharm,但它并非完美: - )。
答案 2 :(得分:0)
另一种选择是将其包括在您正在编写的类/方法/函数之上:
# noinspection PyUnresolvedReferences