18

一部の開発者が Fabric を簡単に実行できるように、簡単なシェル スクリプトを作成しています。(私もPythonは初めてです。)Fabricのインストールの一部はpipのインストールであり、pipのインストールの一部はsetuptoolsのインストールです。

setuptools が既にインストールされているかどうかを検出する簡単な方法はありますか? スクリプトを複数回実行できるようにしたいのですが、既に実行されているものはすべてスキップされます。現状では、ez_setup.py を 2 回続けて実行すると、2 回目は失敗します。

私が思いついたアイデアの 1 つは、/Scripts フォルダーの下にある easy_install スクリプトを探すことでした。sys.executable を使用して Python ルートを推測し、実行可能ファイル名自体を入れ替えることができます。しかし、私はもう少しエレガントなものを探しています (そしておそらくクロス OS フレンドリー)。助言がありますか?

4

7 に答える 7

13

これは素晴らしいことではありませんが、うまくいきます。

簡単な python スクリプトでチェックを実行できます

import sys
try:
    import setuptools
except ImportError:
    sys.exit(1)
else:
    sys.exit(0)

また

try:
    import setuptools
except ImportError:
    print("Not installed.")
else:
    print("Installed.")

次に、呼び出しスクリプトで終了コードであることを確認します

于 2013-10-17T15:07:50.350 に答える
0

setuptools が既にインストールされている場合は、そのバージョンが表示されます。

$python -c "import sys; import setuptools; print(setuptools.version.__version__)"

于 2019-06-20T10:11:39.623 に答える