爲「寫Setupscript(http://docs.python.org/2/distutils/setupscript.html)蟒蛇文檔提到的依賴關係可以根據第一個Python包創建setup.py文件時,如何指定依賴
> 2.4. Relationships between Distributions and Packages
[...] These relationships can be specified using keyword arguments to the distutils.core.setup() function.
Dependencies on other Python modules and packages can be specified by supplying the requires keyword argument to setup(). The value must be a list of strings. Each string specifies a package that is required, and optionally what versions are sufficient.
To specify that any version of a module or package is required, the string should consist entirely of the module or package name. Examples include 'mymodule' and 'xml.parsers.expat'.
[...]
指定基於這個稀疏信息,而不一個例子,我只是想確保我這樣做是正確的。另外,我找不到在API說明此requires
參數http://docs.python.org/2/distutils/apiref.html#distutils.core.setup
因此,它是做過這樣的,例如,
setup(name='MyStuff',
version='1.0',
requires='os, sys, progressbar',
[...]
我希望有人能給我多一點見解!謝謝!
編輯:
爲了解決distutils.core,setuptools的爭論,人們可以簡單地做
try:
from setuptools import setup
except ImportError:
from distutils.core import setup
是否有意義?
整個Python包裝系統記錄不完全,主要是因爲有太多不同的地方,部分非常好,但矛盾的信息。我總是看現有的項目。如果你沒有特殊需求,你只需要distutils。例如瓶頸就是'setup.py'文件的一個很好的例子,它只使用distutils:https://github.com/kwgoodman/bottleneck/blob/master/setup.py –
@ Jan-PhilipGehrcke:然而'瓶頸'未能指定它在元數據中需要'numpy'。 ''setuptools'現在有了更好的文檔,這要歸功於'distribute'分叉被合併回來:http://pythonhosted.org/setuptools/ –
對,你甚至開始立即導入numpy。 –