問題タブ [pep8]

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.

0 投票する
1 に答える
2644 参照

python - Pyflakes + 通常モードでの vim の pep8 チェック

私は Python の IDE として vim を使用していますが、これは素晴らしいものです。適切なプラグインで pyflakes + pep8 を使用します。これらの追加機能が必要です:

  1. pyflakes は、通常モードに切り替えることなく「オンザフライ」でチェックします。
  2. pep8 は「その場で」チェックします。現在、「F6」を割り当てて pep8 チェックを行うと、クイックフィックス ウィンドウがポップアップします。pep8 を pyflakes と同じ方法で、ただし通常モードで実行したい。
  3. pep8 と pyflakes のハイライトは異なる必要があります。

ありがとう

0 投票する
1 に答える
515 参照

python - PEP 8: __future__ インポートをどのようにグループ化する必要がありますか?

PEP 8によると:

インポートは次の順序でグループ化する必要があります。

  1. 標準ライブラリのインポート
  2. 関連する第三者輸入
  3. ローカル アプリケーション/ライブラリ固有のインポート

インポートの各グループの間に空白行を入れる必要があります。

__future__しかし、それは輸入について言及していません。インポート__future__は、標準ライブラリのインポートと一緒にグループ化するか、標準ライブラリのインポートから分離する必要があります。

したがって、どちらがより好ましいですか:

また:

0 投票する
8 に答える
23453 参照

python - Pythonコメントで長いURLをフォーマットし、それでもPEP8に準拠するにはどうすればよいですか?

ブロックコメントで、80文字を超えるURLを参照したいと思います。

このURLを表示するための推奨される規則は何ですか?

bit.lyがオプションであることは知っていますが、URL自体は説明的です。それを短縮してから、短縮されたURLを説明するネストされたコメントを付けることは、くだらない解決策のように思えます。

0 投票する
1 に答える
804 参照

python-3.x - ラッパー関数をアサートします

だから私はコードをレビューしているときにこの興味深い問題に遭遇しました:

独自のカスタマイズされたバージョンへのアサーションのラッピングがassert hasattr(...)、属性が存在し、Noneではないことを確認する必要があるたびに使用するよりも高速で優れたソリューションであるかどうか疑問に思いますか?

0 投票する
1 に答える
367 参照

python - Django / Python (PEP 8): Property というモデル クラスに名前を付けたい場合。Property または Property_ のままにする必要がありますか?

property()Python の組み込み関数であることはわかっていますが、モデル クラスにProperty. このような単純なもの:

クラスを呼び出す必要がありますPropertyProperty_? Python では大文字と小文字が区別されることはわかっていますが、質問する理由は、Django ではPropertyモデル クラスが として識別されるためmyapp.propertyです。

関連する他のモデルでは、このようなフィールドにPropertya を追加しました_

0 投票する
2 に答える
7545 参照

python - QuickFixウィンドウから自動pep8修正を適用します

バックグラウンド:

私は(素晴らしい)Vimプラグインpython-modeを使用しています。これにはpep8リンターが含まれています。この:PyLintコマンドはすべてのリンターを実行し、QuickFixウィンドウでエラーを開きます。

問題:

ここで、pep8リンターのみを使用していて、QuickFixウィンドウにエラーがいっぱいあると仮定します。これらの各エラーをステップスルーし、自動修正(autopep8など)を適用したいと思います。autopep8ツールは素晴らしいですが、間違いを犯します。理想的には、Vimの各修正を監視できるようにしたいと思います(修正を適用し、確認し、次の修正に移動します)。

私の現在のアプローチは、Pythonファイルでautopep8を実行し、結果を比較してから、悪い変更を修復することです。

ただし、このアプローチは私の元に戻る履歴を台無しにし、不必要に複雑に見えます。もっと良い方法はありますか?

質問:

QuickFixウィンドウ内のpep8エラーにpep8修正(利用可能な場合)を自動的に適用する方法はありますか?

0 投票する
1 に答える
282 参照

python - 2つの割り当てを1行に組み合わせてpep8スタイルのPythonコード

1行目と2行目を1行にまとめる方法は?

別の質問:

行を2行に分割するにはどうすればよいですか?

0 投票する
3 に答える
2314 参照

python - このグローバル クラス変数を pep8 に準拠させ、引き続き機能させるにはどうすればよいですか?

Pep8は、常にclsクラス メソッド定義の最初の引数として使用することをお勧めします。cls.cartridge_stateここで、インスタンス メソッド (この場合: ) でも使用できるクラス変数 (この場合: ) を使用したいとします__init__。そのためには、変数をグローバルにする必要があります (以下のコードを参照)。ただし、インスタンス化FountainPenすると、次のランタイム エラーが発生します。

しかし、もう一度変更global cartridge_stateするglobal cls.cartridge_stateと、モジュールをインポートしようとすると、syntaxError が発生します。

クラス変数cartridge_stateを pep8 に準拠させ、このコードをエラーなしで動作させるにはどうすればよいですか?

0 投票する
3 に答える
103490 参照

python - Python の isinstance() を適切に使用して、変数が数値かどうかを確認する方法は?

次のようなことをしている古い Python コードを見つけました。

予想どおり、pep8この推奨される の使用法について文句を言いisinstance()ます。

さて、問題は、numbersモジュールが Python 2.6 で追加され、Python 2.5+ で動作するコードを記述する必要があることです。

だからif isinstance(var, Numbers.number)解決策ではありません。

この場合、適切な解決策はどれでしょうか?

0 投票する
3 に答える
2812 参照

python - python 同じフォルダにインポート

同じフォルダー内の別のファイルにファイルをインポートする場合。

ファイル構造:

d.pyで:

更新 1 :

両方使ってる

と:

プログラムは実行できず、ImportError を発生させます。

問題を解決するために、私は使用します

ただし、標準的な方法ではないようです。

いくつかの有名なプロジェクトのように: 竜巻など、常にこの構造を使用しています。しかし、挿入行がありません。

インポート文が unittest ファイルにある場合、sniffer や autonose などの自動テスト ツールは、このような構造を実行できます。

どうしてか分かりません。

PEP328 または PEP366 では、これに関する優れた解決策は得られません。

PEP8 は、このようなことを行うことを推奨しています。

この問題は、次のような別のモジュール (別のファイル内) をインポートするときにも発生します。