他のいくつかのpythonモジュールを含むフォルダーから必要なモジュールは1つまたは2つだけです。フォルダーをパスに追加すると、そのフォルダー内のすべてのモジュールを効果的に利用できるようになります。しかし、不要な古いモジュールがいくつかあります。これらのモジュールの特定のサブセットのみを利用可能にすることは可能ですか?
質問する
110 次
3 に答える
2
あなたの質問を読んで、私はそれを理解しています
- そこからいくつかのモジュールが必要なため、pythonpathにフォルダーを含めています。
- 使用しているバージョンに比べて古い可能性がある他のモジュールが含まれているため、間違ったライブラリをインポートしてしまうことは望ましくありません。
あなたに合った2つのオプションを提案します。
- 含めるこのフォルダが の最後にあることを確認してください
sys.path
。これにより、新しく含まれるフォルダーに存在する場合に既にインポートしているモジュールが、その特定の場所からインポートされることはありません。 - (*nix の場合のみ) 別のフォルダーを作成し、目的のファイルへのシンボリック リンクを作成します。次に、作成した他のフォルダーを含める必要があります。
あなたのコメントを読んで、最善の選択肢は、スクリプトのどこかに次の行を追加することですが、インポートする前に `
import sys
sys.path.append('/whatever')
于 2012-04-08T19:51:14.607 に答える
1
もし、あんたが
import X
モジュール Xのみをインポートします。それ以外は何もインポートしません。Python パス上にあるものは、自動的にインポートされることと同等ではありません (単にimportableです)。以下も参照してください。
于 2012-04-08T19:37:10.400 に答える
1
新しいディレクトリを作成します。インポートするモジュールごとln -s
に、実際のモジュールを指すシンボリック リンク ( ) を追加します。次に、新しいディレクトリをパスに追加すると、インクルード順序でゲームをプレイする必要がなくなります。
mkdir ./mymods
export PYTHONPATH="$PYTHONPATH":`pwd`/mymods
cd mymods
ln -s ../allmods/module1.py
ln -s ../allmods/module2.py
于 2012-04-08T20:35:38.900 に答える