11

Pythonでzipファイルにあるモジュールをインポートする方法があることを知っています。zip ファイルに一種のカスタム python パッケージ ライブラリを作成しました。

ライブラリを使用している「タスク」スクリプトもこのパッケージに入れたいと思います。次に、bash で、zip を解凍せずに、zip ファイル内の目的のスクリプトを呼び出したいと考えています。

目標は、スクリプトを実行するときに、指定したフォルダーに移動する zip を 1 つだけにすることです。

4

2 に答える 2

18

私はついにこれを行う方法を見つけました。zip ファイルを作成する場合は__main__.py、zip のルートに作成する必要があります。したがって、メイン内でスクリプトを起動し、次のコマンドを使用して bash から if を呼び出すことができます。

python myArchive.zip

このコマンドは__main__.pyファイルを実行します! :)

次に.command、適切なパラメーターを使用してスクリプトを起動するファイルを作成できます。

__main__.pyたとえば、引数を渡す必要がある場合は、ファイルにコードを追加して柔軟性を高めることもできます。

元:python __main__.py buildProject

リファレンス ドキュメントはこちら: https://docs.python.org/2/library/runpy.html

于 2010-09-21T18:37:00.807 に答える
3

zipimportをご覧ください。インストールから直接動作するはずです。pythonpath が zip ファイル/ディレクトリを指すようにするために、いくつかの作業が必要になる場合があります。

このモジュールは、Python モジュール (*.py、*.py[co]) とパッケージを ZIP 形式のアーカイブからインポートする機能を追加します。通常、zipimport モジュールを明示的に使用する必要はありません。これは、ZIP アーカイブへのパスである sys.path アイテムの組み込みのインポート メカニズムによって自動的に使用されます。

于 2010-09-21T13:53:48.407 に答える