设置蟒蛇setup.py在包范围的变量安装
问题描述:
有没有一种方法,当用户键入设置蟒蛇setup.py在包范围的变量安装
python setup.py install
安装Python包,setup.py
可制成在pacakge的基础设置特定变量?一个常见的例子是基本上将mypackage.__revision__
设置为结算的svn修订版本,如果其中一个从svn开始工作的话。另一个例子是如果用户可以选择全局选项,则根据传递给setup.py的标志设置选项mypackage.__option__
,例如,
python setup.py install --set-flag=10
然后使用包时,mypackage.__option__
将等于10
。
答
SVN版本可以由SVN设置。你不需要使用setup.py来搞乱。
只需将$Revision$
标志包含在某处的文本中并告诉SVN进行替换。
全局选项通常由配置文件处理。为什么在安装时弄乱它?创建和读取配置文件更容易(也更灵活)。
例如,您可以安装配置文件,其中包含有关如何编辑它的说明。如果配置文件是Python,那么它只是配置中的一个变量。
THEOPTION = 10
这就够了。很简单。非常标准化。非常容易管理。
感谢您的建议 - 配置文件建议非常好,现在我的主目录中有一个.packagerc文件,它由ConfigParser中的SafeConfigParser类读取。 – astrofrog 2010-03-15 13:49:54