0

移植性を高めるために、アプリ内にいくつかのライブラリを追加しようとしています。問題は、アプリがこれを念頭に置いて構築されていないことです。

つまり、より具体的には、パッケージに libs というフォルダーを作成し、アプリで使用されるライブラリのコピーをそこに保持したいと考えています。

たとえば、MySQLdb ライブラリを使用しているとします。私のアプリでは、このようにインポートしています

import mysqldb

同じコードを使用できるようにしたいのですが、libs フォルダー内に mysqldb があります。

それは可能ですか?私はいくつかのことを試しまし__init__.pyたが、失敗しました。

4

2 に答える 2

2

プロジェクト内のどこにも MySQLdb を配置しないでください。これはサードパーティのライブラリであり、システム パッケージとしてインストールするか、プロジェクトの virtualenv 内にインストールする必要があります。

于 2012-12-04T13:50:43.157 に答える
1

sys.path をいじるだけで、目的が達成されるはずです。プログラムの最初で次のようにします。

import sys
sys.path = [$'path_to_your_lib_folder_here'$] + sys.path

ただし、これはベスト プラクティスではありません。特に、ソフトウェアが他のライブラリによってサードパーティとして使用される場合は注意が必要です。

于 2012-12-04T14:21:20.277 に答える