Python标头 - $(美元符号)封装的目的是什么?

时间:2013-04-12 23:41:36

标签: python code-documentation

提前道歉,这是我在网上可以找到的东西,但我遇到了麻烦。

在Python中,在标题部分,我看到有时人们会用美元符号($)包装他们的文字。从示例来看,似乎这是一个指向填充自动更新信息的指针(可能是通过源代码控制?),但我不明白它是如何工作的。

例如:

__version__ = '$Revision: 4799 $'.split()[1]
__date__ = '$Date: 2006-09-25 11:09:02 -0400 (Mon, 25 Sep 2006) $'.split()[1]
__author__ = 'John Doe FIX: put in the authors name'

是我在(Python Example Documentation Template)找到的一个例子。所以$围绕着版本(随着时间的推移而改变)和日期(也会改变)。假设它是某种指针,总是捕获有关版本,日期等的最新信息,有人可以指出我这是如何工作的吗?哪个源代码控制软件使用这种语法?跨语言是否相同?

谢谢!

4 个答案:

答案 0 :(得分:3)

这不是Python特有的,它是源控制系统使用的东西,可以追溯到RCS和CVS。

有关CVS语法的列表,请参阅CVS Keywords。虽然现在很少有人使用CVS,但人们使用的许多源控制系统(最值得注意的是,颠覆)处理CVS语法或稍微改变它。 (有些人还会创建构建脚本,在构建时执行类似的替换,而不是签入时间。)

答案 1 :(得分:2)

这是subversion's keyword substitution(最初为CVS)的结果。是的,它适用于所有文件,而不仅仅是python源代码。

答案 2 :(得分:1)

这称为“关键字替换”,这种想法的变体在许多版本控制系统中实现,如RCS,CVS和Subversion。鉴于此,您现在可以轻松地在网上搜索详细信息。

答案 3 :(得分:1)

它不是特定于python的。

某些版本控制系统(至少RCS,CVS和SVN)会自动使用这些特殊变量插入文件的修订号和最后修改日期。