Pythonコーディング標準/ベストプラクティス[終了]


116

Pythonでは、一般にPEP 8-Pythonコードのスタイルガイドをコーディング標準/ガイドラインとして使用していますか?あなたが好む他の正式な規格はありますか?


1
//、「オーディエンス設定」の要請は最初は無害に見えるかもしれませんが、スタックオーバーフローをポーリングメカニズムに変換します。「他にあなたが好む________はありますか?」文字通り、好みを尋ねるのであって、事実ではない。
Nathan Basanese 2015年

回答:


150

「Pythonでは、一般的にPEP 8-Pythonコードのスタイルガイドをコーディング標準/ガイドラインとして使用しますか?他に形式化された標準をお好みですか?」

あなたが述べたように、本文はPEP 8に従い、docstring規約はPEP 257に従います。

Pythonスタイルガイドに加えて、以下を参照することをお勧めします。

  1. Pythonのようなコード:慣用的なPython
  2. よくある間違いといぼ
  3. Pythonコードを書かない方法
  4. Pythonの落とし穴


8

私はPEP-8に非常に近づきます。

私がPEP-8に変更するのに煩わされない3つの特定の事柄があります。

  • かっこ、角かっこまたは中かっこのすぐ内側に無関係な空白を避けます。

    提案: spam(ham[1], {eggs: 2})

    私はとにかくこれを行います: spam( ham[ 1 ], { eggs: 2 } )

    どうして?30年以上の根深い習慣は、()の関数名または(Cの)ステートメントのキーワードに対する抵抗です。70年代のFortran IVから。

  • 算術演算子の周りにスペースを使用します。

    提案: x = x * 2 - 1

    私はとにかくこれを行います: x= x * 2 - 1

    どうして?GriesのThe Science of Programmingは、割り当てと、状態が変更される変数との関係を強調する方法としてこれを提案しました。

    複数の割り当てや拡張割り当てではうまく機能しません。そのため、多くのスペースを使用します。

  • 関数名、メソッド名、インスタンス変数名

    推奨:小文字、単語を読みやすくするために必要に応じてアンダースコアで区切ります。

    私はとにかくこれを行います:camelCase

    どうして?20歳以上のキャメルケースの根強い習慣。80年代のパスカルから始まります。


1
それは素晴らしいコンテンツです!codingstyleguide.comまたはcodereview.stackexchange.comは、この優れたガイドラインを作成するのに最適な場所です。
ポンペヨ2014年

5

PEP 8は良いです、私がそれがもっと激しく降りてきたことを望んでいる唯一のものは、タブ対スペースの聖なる戦争でした。

基本的に、Pythonでプロジェクトを開始する場合は、タブまたはスペースを選択して、すべての違反者を一目で撃つ必要があります。


4
タブかスペースか?PEP8から:スペースは好ましいインデント方法です。タブは、すでにタブでインデントされているコードとの一貫性を保つためにのみ使用する必要があります。
Demz 14

//、PEP8ではスペースがインデント方法として推奨されていることは明らかです、ライアン。反対投票。しかし、答えを更新するでしょうか?
Nathan Basanese 2015年


4

私は非常に厳格にそれに従います。PEP-8の前の唯一の神は、既存のコードベースです。


1
そして、私はPEP-8が既存のコードベースさえ考慮に入れていることに注意します。
John Mulder、

2

はい、できる限り忠実にフォローするようにしています。

私は他のコーディング標準に従っていません。


1

私はPEP8に従っていますが、これは素晴らしいコーディングスタイルです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.