問題タブ [pylint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - pylint バグ - @property + @foo.setter の使用時の E1101 & E0102
次の場合、pylint がうまく処理できないことに気付きました。
python2.6以降、これは完全に有効なケース構文ですが
foo を 2 回定義したと表示され、".setter" 構文を理解していません (E1101 と E0102 が返されます)。
コードを変更せずに回避策はありますか? エラーは他の場所にとって重要であるため、エラーを無効にしたくありません。
それをより適切に処理するために使用できる他のツールはありますか? 私はすでにpyflakesをチェックしましたが、同じように動作します。PyDev のコード分析は、この特定のケースをより適切に処理しているようですが、規則、リファクタリング、および pylint が行うその他の優れた機能をチェックしておらず、外部スクリプトから実行することはできません (または実行できますか??)
ありがとう!
python - pylons/SAモデルで継承されたメソッドを見つけるためにpylintを取得する際の問題
SqlAlchemy 宣言型モデルを使用している Pylons アプリがあります。コードを少しきれいにするために、SA Base に .query を追加し、そこからすべてのモデルを継承します。
だから私の app.model.meta には
これを app.model.mymodel に継承し、meta.Base の子として宣言すると思います。これにより、クエリを次のように記述できます
問題は、pylint が .query をモデルの有効な属性として認識していないことです。
明らかに、このエラーはあらゆる場所で発生します。これは、クエリを実行するモデルで発生するためです。エラーは、orm 以外のクラスで今後何かを指摘する可能性があるため、エラーをスキップしたくありませんが、pylint がこれを受け入れるには何かが欠けている必要があります。
ヒントはありますか?
python - 複数のプロジェクトが同じ基本モジュール名を持つ場合、Pylint はインポートを処理しません。
ソース ツリーのさまざまな部分に一連のコード プロジェクトがあり、すべてが基本パッケージcompany_name
を持ち、それらのいくつかは相互に機能をインポートします。これは、コードを実行するときに問題なく機能し、setuptools と declare_namespace はモジュールをまとめて処理します。ただし、pylint はモジョを感じていないようです。そのため、多数のファイルに大きな優先度の高いエラーがありUnable to import X from company_name
ます。PYTHONPATH は役に立ちません。おそらく pylints --init-hook= の魔法のようなものです。ヒントやアイデアは大歓迎です!
python - Jython 用 Pylint 入門 (jython2.5.1)
デプロイの自動化のための Jython スクリプトがたくさんあります。Pylint をビルド パイプラインの一部にしたいと考えています。
ここから logilab-astng、logilab-common、および pylint をダウンロードしてインストールしました: http://www.logilab.org/857
以下を使用して、logilab ライブラリを正常にインストールしました。
jython setup.py install
ただし、pylint をインストールしようとすると、次の出力が表示されます。
何か案は?
python - How do I disable a Pylint warning?
I'm trying to disable warning C0321 ("more than one statement on a single line" -- I often put if
statements with short single-line results on the same line), in Pylint 0.21.1 (if it matters: astng 0.20.1, common 0.50.3, and Python 2.6.6 (r266:84292, Sep 15 2010, 16:22:56)).
I've tried adding disable=C0321
in the Pylint configuration file, but Pylint insists on reporting it anyway. Variations on that line (like disable=0321
or disable=C321
) are flagged as errors, so Pylint does recognize the option properly. It's just ignoring it.
Is this a Pylint bug, or am I doing something wrong? Is there a way around this?
I'd really like to get rid of some of this noise.
python - Pylint のベスト プラクティス
Pylint は、Python コードの分析を実行するための優れたツールのようです。
ただし、私たちの主な目的は、コーディング規約ではなく、潜在的なバグを見つけることです。すべての Pylint チェックを有効にすると、多くのノイズが発生するようです。使用していて効果的な Pylint 機能のセットは何ですか?
python - pylintは__package__を参照してボークします
私は__package__
setup.pyで、テスト、ビルド、インストールなどを行うことになっているパッケージのトップレベルの名前を参照するために使用しています。ただし、pylintオブジェクト:
これはでうまく機能しipython
ます:
pylintは、PEP 366の「インポートシステムが__package__が設定されていない(またはNoneに設定されている)モジュールで明示的な相対インポートを検出すると、正しい値を計算して保存する」を無視して、ここで正しいことを行っていますか?もしそうなら、私は何を変更する必要がありますか?
回避策:package.__name__.rpartition('.')[0]
の代わりに使用しpackage.__package__
ます。
python - デフォルトの Python コーディング スタイルを変更する
Pythonでは、キャメルケースの命名スタイルに従っています。コードを「pylint」でチェックしたところ、lower_case_with_underscoresスタイルに従っていないというエラーが発生しました。また、コーディングには netBeans IDE を使用しています。この IDE は、lower_case_with_underscoresスタイルに従っていないことを警告します。
lower_case_with_underscores ではなくキャメルケースの命名スタイルに従っていることを pylint と netBeans に伝えるには??
ありがとう。