13

私はpyCharmでプログラミングしてwxPythonプロジェクトを作成しています(ほとんどがwxGladeから生成されています)。たとえば、文字列を指定するコードがある場合:

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

次に、について不平を言いUnresolved reference '_'ます。この未解決の参照のみを無視する方法はありますか?

4

3 に答える 3

17

未解決の参照インスペクションの設定を変更できます。

  • [設定... ] メニューを開く
  • 検査ページを選択
  • 未解決の参照を検索し、インスペクションをクリックします。右下にIgnore referencesというタイトルのリスト ウィジェットが表示されます。
  • リストに追加_します。

警告:これにより、プロジェクトのすべてのソース ファイルで未解決の参照が無視さ_れます。関数にそのような名前を使用することはほとんどないため、これは通常は問題になりません。あなたが何かを知っているなら、あなたはあなたが電話するのを忘れたことをすでに知っています.NameError_gettext.install

または:

  • 問題のあるファイルを開き、カーソルを_.
  • Alt+を押しEnterてコンテキスト メニューを開きます (これは、選択または構成したショートカットによって異なります)。
  • 未解決の参照を無視を選択しますmodule_name._
  • すべての「未解決の参照」の問題を修正するを選択します

確認したところ、これをモジュールのみに制限することが可能です。_内部モジュールを使用している場合は、参照を無視するリストaに追加すると、モジュール内のすべての使用が無視されますが、他のモジュールでの誤用に対して警告が表示されます。a.__a.py_

于 2014-04-11T18:42:39.063 に答える
1

元の質問が示唆するように、これは国際化されたコードにとって実際の問題であり、_() でマークされた文字列が出現するたびにフラグを立てることになります。何百もの危険信号を 1 つと交換する私の解決策は、これをコードに追加することです。

    # Keep PyCharm happy.
    _ = _

これが引き起こす 1 つの危険信号は無視するのが簡単で、私は PyCharm が大好きですが、完璧ではないことを思い出させ続けます:-)。

于 2016-09-22T10:03:35.373 に答える