1

最近、Pythonスクリプトで次のコードを見ました。

#!/usr/bin/env python
__svnversion__ = '$Id: setup.py 303 2010-10-20 02:51:64Z xyz $'    
import sys

どういうわけかSVNでスクリプトのバージョンを追跡する方法のようですが、なぜ、どのように使用されているのか正確にはわかりません。このスタイルのコーディングについて、そしてなぜ人々がそれを使用するのかについて、どこでもっと一般的に読むことができますか?

4

2 に答える 2

10

それは何の意味もありません。そのプログラムの作成者は、その名前で変数を作成することにしました。

この'$Id: setup.py 303 2010-10-20 02:51:64Z xyz $'ビットにより、svnはバージョン番号を自動的に更新できます。おそらく、コードのどこかで、この値が表示されるか、デバッグ出力などとともに送信されます。

PEP 8は、これを入れることを提案して__version__いますが、むしろ軽蔑しています(「[...]クラッドが必要な場合」)。

于 2012-09-10T18:43:53.800 に答える
0

また、次のPEP 396は、Pythonソースコードでの「_version_」属性使用に関するユーザーストーリーを含む優れた背景と履歴を提供します。

于 2012-09-10T21:45:38.353 に答える