我如何阻止pyCharm抱怨下划线字符串?

vsdwdz23  于 2023-08-05  发布在  PyCharm
关注(0)|答案(3)|浏览(134)

我在pyCharm中编写了一个wxPython项目(主要由wxGlade生成)。如果我有一些指定字符串的代码,例如:

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

字符串
然后它会抱怨Unresolved reference '_'。有没有办法只忽略这个未解析的引用?

myzjeezk

myzjeezk1#

您可以更改“未解析引用”检查的设置:

  • 打开 * 设置...* 菜单
  • 选择 * 检查 * 页面
  • 搜索“Unresolved references”(未解决的引用)并单击检查。在右下角,您应该会看到一个标题为 Ignore references 的列表小部件。
  • _添加到列表中。
    警告:这将忽略项目所有源文件中未解析的引用_。这通常不是一个问题,因为您不太可能为函数使用这种名称。如果你曾经得到一个关于_NameError,那么你已经知道你忘记调用gettext.install了。

或者:

  • 打开有问题的文件并将光标放在_的位置。
  • 按Alt+Enter打开上下文菜单(这可能取决于您选择或配置的快捷方式)。
  • 选择 * 忽略未解析的引用module_name._*
  • 选择 * 修复所有“未解决的引用”问题 *

我刚刚检查过,可以将其限制为仅一个模块。如果你在模块a中使用_,那么将a._添加到列表 Ignore references 中,所有在a.py模块中使用_的情况都将被忽略,而在其他模块中误用_时,将显示警告。

mfpqipee

mfpqipee2#

另一种选择是将其包含在您正在编写的类/方法/函数之上:

# noinspection PyUnresolvedReferences

字符串

6ju8rftf

6ju8rftf3#

正如最初的问题所暗示的,这是i18 n代码的一个真实的问题,它最终会标记每一个用_()标记的字符串。我的解决方案是将数百个红旗换成一个红旗,将以下内容添加到代码中:

# Keep PyCharm happy.
    _ = _

字符串
这引起的一个危险信号很容易被忽略,并不断提醒我,尽管我喜欢PyCharm,但它并不完美:-)。

相关问题