Python学習の道-PEP 8 Python符号化規範


Python学習の道-PEP 8 Python符号化規範
コード配列
  • インデント.4つのスペースのインデント(エディタではこの機能を完了できます)、Tapを使用しないで、Tapとスペースを混合して使用することはできません.
  • 行あたり最大長さ79、改行は逆スラッシュ、好ましくは括弧を使用します.改行点はオペレータの後ろで車をノックします.
  • クラスとtop-level関数定義の間に空の2行があります.クラス内のメソッド定義の間に空の行があります.関数内の論理に関係のない段落の間に空白の行.他の場所はできるだけ空行しないでください.

  • ドキュメントの編成
  • モジュールの内容の順序:モジュールの説明とdocstring-import-globals&constants-その他の定義.このうちimport部分は、標準、三方、自己作成順に順次排出され、間に1行空いています.
  • は、import osなどの1つのimport内の複数のライブラリでは推奨されません.sysは推奨されません.
  • from XX import XXリファレンスライブラリを使用する場合は、「module.」を省略できます.いずれも名前の競合が発生する可能性があります.この場合、import XXを採用します.

  • スペースの使用
    全体の原則は、不要なスペースを避けることです.
  • 各種右かっこの前にスペースを入れないでください.
  • カンマ、コロン、セミコロンの前にスペースを入れないでください.
  • 関数の左かっこの前にスペースを入れないでください.Func(1)のように.
  • シーケンスの左かっこの前にスペースを入れないでください.リスト[2]のように.
  • オペレータの左右にスペースを1つずつ追加し、位置合わせのためにスペースを追加しないでください.
  • 関数のデフォルトパラメータで使用される付与記号の左右にスペースを省略します.
  • 「;」を使用しても、複数の文を同じ行に書かないでください.許可します.
  • if/for/while文では、実行文が1文のみであっても、別の行を実行する必要があります.

  • コメント
    全体的な原則では、誤った注釈は注釈がないほうがいい.だから、コードが変化したとき、最初のことはコメントを修正することです.注釈は英語を使用する必要があります.完全な文が望ましいです.頭文字は大文字で、文の後に終了符があり、終了符の後に2つのスペースがあり、次の文を開始します.フレーズの場合は、終了文字を省略できます.
  • ブロックの注釈で、コードの前に追加された注釈.'#'の後にスペースを追加します.段落の間には'#'のみの行間隔があります.例えば:
  • # Description : Module config.
    # 
    # Input : None
    #
    # Output : None
    
  • 行の注釈で、1つのコードの後に注釈を付けます.例えば、
  • x = x + 1       # Increment x
    
  • 無意味な注釈を避ける.

  • ドキュメントの説明
  • はすべての共有モジュール、関数、クラス、メソッドにdocstringsを書く.非共有は必要ありませんが、コメント(defの次の行)を書くことができます.
  • docstringが改行する場合は、次の例を参照してください.詳細はPEP 257
  • を参照してください.
    """
    Return a foobang
    Optional plotz says to frobnicate the bizbaz first.
    """
    

    ネーミング仕様
    全体的な原則として、新しいコードは以下のネーミングスタイルで行わなければならず、既存のライブラリのコードはできるだけスタイルを維持しなければならない.
  • は、小文字「l」、大文字「O」など、混同しやすいアルファベットをできるだけ単独で使用します.
  • モジュールの名前はできるだけ短く、すべての小文字を使用して、下線を使用することができます.
  • パッケージの名前はできるだけ短く、すべての小文字を使用して、下線を使用してはいけません.4.クラスのネーミングはCapWords方式、モジュール内部で使用するクラスは_CapWordsの方式.
  • 異常ネーミングCapWords+Error接尾辞を使用する方法.
  • グローバル変数は、C言語のstaticのようなモジュール内でのみ有効です.実現方法は2種類あり、1つはallメカニズムである.二つ目は接頭辞の下線です.
  • 関数の名前は、すべての小文字を使用し、下線を使用できます.
  • 定数ネーミングはすべて大文字で、下線を使用できます.
  • クラスのプロパティ(メソッドと変数)の名前は、下線を使用することができるすべての小文字を使用します.
  • クラスのプロパティには、3つの役割ドメインpublic、non-public、subclass APIがあり、C++のpublic、private、protected、non-publicプロパティの前に、下線を接頭辞として理解できます.
  • クラスの属性がキーワード名と衝突した場合、下線を接尾辞にし、できるだけ略語などの他の方法を使用しないでください.
  • サブクラス属性との名前の競合を回避するために、クラスのいくつかの属性の前に、2つの下線を接頭辞します.例:クラスFooで宣言_a,アクセス時はFoo._のみFoo__a,曖昧さを避ける.子類もFooと呼べば、どうしようもありません.
  • クラスのメソッドの最初のパラメータはselfでなければなりませんが、静的メソッドの最初のパラメータはclsでなければなりません.

  • 転自:PEP 8 Pythonコード仕様-簡書https://www.jianshu.com/p/52f4416c267d 参考:Python PEP 8コード仕様中国語版-遺伝子記憶-CSDNブログhttps://blog.csdn.net/ratsniper/article/details/78954852