1. ホーム
  2. python

[解決済み】Pythonファイルの共通ヘッダー形式とは?

2022-01-28 10:23:39

質問

Pythonのコーディングガイドラインに関するドキュメントで、Pythonソースファイルのヘッダ形式が以下のようになっているのを見かけました。

#!/usr/bin/env python

"""Foobar.py: Description of what foobar does."""

__author__      = "Barack Obama"
__copyright__   = "Copyright 2009, Planet Earth"

Pythonの世界では、これがヘッダの標準的な書式なのでしょうか? 他にどのようなフィールド/情報をヘッダーに入れることができるのでしょうか? Pythonの達人たちは、良いPythonソースヘッダのためのガイドラインを共有しています :-)

どのように解決するのですか?

そのすべてのメタデータは Foobar モジュールになります。

最初のものは docstring ですでに説明したように、モジュールの ピーターの回答 .

<ブロッククオート

モジュール(ソースファイル)はどのように整理すればよいですか?(アーカイブ)

各ファイルの最初の行は #!/usr/bin/env python . これにより、CGIコンテクストなどで、暗黙のうちにインタプリタを起動するスクリプトとしてファイルを実行することが可能になります。

次に、docstringに説明を記述します。 説明が長い場合は、最初の行にそれ自体で意味をなす短い要約を書き、改行で区切ります。

import文を含むすべてのコードは、docstringに従うこと。 そうでない場合、docstring はインタプリタに認識されず、対話型セッションで (すなわち obj.__doc__ また、自動化ツールでドキュメントを作成する場合にも便利です。

ビルトインモジュールを最初にインポートし、次にサードパーティーモジュールをインポートし、その後にパスを変更したモジュールと自分のモジュールをインポートします。 特に、モジュールのパスや名前の追加は、どんどん変わっていく可能性が高いので、一箇所にまとめておくと、探しやすくなります。

次はオーサーシップ情報であるべきだ。 この情報は、このフォーマットに従ってください。

__author__ = "Rob Knight, Gavin Huttley, and Peter Maxwell"
__copyright__ = "Copyright 2007, The Cogent Project"
__credits__ = ["Rob Knight", "Peter Maxwell", "Gavin Huttley",
                    "Matthew Wakefield"]
__license__ = "GPL"
__version__ = "1.0.1"
__maintainer__ = "Rob Knight"
__email__ = "[email protected]"
__status__ = "Production"

ステータスは通常、プロトタイプ、開発、生産のいずれかである必要があります。 __maintainer__ は、バグを修正し、輸入された場合は改善を行う人でなければなりません。 __credits__ とは異なります。 __author__ その点 __credits__ には、バグフィックスや提案などを報告したが、実際にはコードを書かなかった人たちが含まれます。

これ より多くの情報がある場合、リスト __author__ , __authors__ , __contact__ , __copyright__ , __license__ , __deprecated__ , __date____version__ を認識可能なメタデータとする。