0

ユーザーがsetuptoolsの「easy_install」を利用できるか、「easy_install」の配布バージョンを持っているかどうか、Pythonからプログラムで確認する方法はありますか?

それらのどれが利用可能かを知りたいです(理想的には、どれがシステムによって「使用中」です)。

これはどのように行うことができますか?ありがとう。

4

2 に答える 2

2

イージーインストールベース向け

>>> import pkg_resources
>>> pkg_resources.get_distribution('setuptools')
setuptools 0.6c11 (t:\tmp\easyinstall\lib\site-packages\setuptools-0.6c11-py2.7.egg)
>>> pkg_resources.get_distribution('setuptools').project_name
'setuptools'

配信ベースの場合

>>> import pkg_resources
>>> pkg_resources.get_distribution('setuptools')
distribute 0.6.31 (t:\tmp\distribute\lib\site-packages\distribute-0.6.31-py2.7.egg)
>>> pkg_resources.get_distribution('setuptools').project_name
'distribute'
于 2013-02-05T20:56:46.670 に答える
1

含まれているpkg_resourcesライブラリsetuptoolsを使用して、が利用可能かどうか、利用可能である場合はそのバージョンを検出します。をインポートできない場合pkg_resourcesは、setuptoolsライブラリがインストールされていません。ピリオド:

try:
    import pkg_resources
except ImportError:
    print "No setuptools installed for this Python version"
else:
    dist = pkg_resources.get_distribution('setuptools')
    print dist.project_name, dist.version

プロジェクト名は、またはのいずれdistributesetuptoolsです。私にとって、これは次のように出力されます:

>>> import pkg_resources
>>> dist = pkg_resources.get_distribution('setuptools')
>>> print dist.project_name, dist.version
distribute 0.6.32

利用可能な情報の詳細については、Distribution属性のドキュメントを参照してください。

于 2013-02-05T21:57:37.647 に答える