他のいくつかのPythonモジュールを含むaフォルダから必要なモジュールは1つまたは2つだけです。私のパスにフォルダを追加すると、そのフォルダ内のすべてのモジュールを効果的に利用できるようになります。しかし、私は欲しくないいくつかの時代遅れのモジュールがあります。それらのモジュールの特定のサブセットを私に利用可能にすることは可能ですか?Python:sys.path内のフォルダから特定のモジュールのみを持つことは可能ですか?
答えて
他にあなたが
import X
あなただけインポートモジュールX.の何もない場合は。あなたのpythonパス上にあるものは、自動的にインポートされるのと同じではありません(ちょうどのインポート可能なです)。参照:
あなたの質問を読ん私は実際にインポートすることができますが、実際にインポートすることはできません。たとえば、私はvirtualenvにnumpyの個人用インストールがあり、システムには古いバージョンが全世界にあります。私はグローバルライブラリからPyQtだけを望んでいますが、古いバージョンのnumpyがグローバルバージョンと競合するのを防ぐことは望ましくありません。 –
私はあなたがそれから、モジュールのカップルを必要とするので
- は、あなたがあなたのPYTHONPATH内のフォルダを含めていることを理解しています。
- 使用しているバージョンと比較して古いモジュールが含まれているため、間違ったライブラリのインポートを終了させたくありません。
あなたには2つのオプションがあります。
- このフォルダの末尾が
sys.path
であることを確認してください。これにより、新しくインクルードされたフォルダにすでに存在しているモジュールが、その特定の場所からインポートされることはありません。 - (* nixのみ)別のフォルダを作成し、興味のあるファイルへのシンボリックリンクを作成します。作成した別のフォルダを含める必要があります。
あなたのコメントを読むと、私は示唆し、最良のオプションは、スクリプトのどこかに以下の行を追加することですが、あなたはimport`前
import sys
sys.path.append('/whatever')
はい、これはまさに私が求めていることです。とにかく私が含まれているフォルダがsys.pathの最後にあることを確認するには? たとえば、PYTHONPATHのディレクトリが追加されるタイミングは明確ですか? –
@ChristopherDorian:sys.pathにパスをどのように追加する予定ですか?あなたが答えが簡単であることを明確にすれば。 1つの明白な方法は 'import sys \ nsys.path.append("/whatever ")'です。これにより、ライブラリが検索パスの最後にあることが保証されます。あなたがやっている他の方法はありますか? – Abhijit
今、私はPYTHONPATHを使ってフォルダを追加しています。これまでのところsys.pathの自分のローカルライブラリの下に表示されていますが、これが常に正しいかどうかはわかりません。 –
は、新しいディレクトリを作成します。インポートするモジュールごとに、実際のモジュールを指し示すシンボリックリンク(ln -s
)を追加します。あなたのパスに新しいディレクトリを追加すると、あなたのインクルード注文でゲームをする必要はありません。
mkdir ./mymods
export PYTHONPATH="$PYTHONPATH":`pwd`/mymods
cd mymods
ln -s ../allmods/module1.py
ln -s ../allmods/module2.py
- 1. Python:モジュール内にdoctestを持つ特定の関数だけをテストすることは可能ですか?
- 2. Googleドライブから特定のフォルダのすべてのファイルを取得することは可能ですか?
- 3. 内部にng-includeを持つことは可能ですか?
- 4. プライベート/内部ドッカーリポジトリを持つことは可能ですか?
- 5. gulpの変数をhtmlからgulpにスローし、特定のフォルダにロードすることは可能ですか?
- 6. カスタムコントロールデザイン定義のファセット内容を特定することは可能ですか?
- 7. フォルダ内のすべてのjarを使用するjarマニフェストを持つことは可能ですか?
- 8. AngularJSモジュールを他のモジュールから分離することは可能ですか?
- 9. 特定のプロトコルを実装するすべてのモジュールを見つけることは可能ですか?
- 10. 再生! warコマンド - application/libフォルダから特定のjarファイルを除外することは可能ですか?
- 11. 特定のファイルのみをgitでブランチからマージすることは可能ですか?
- 12. Django:ページネーションで特定のオブジェクトを見つけることは可能ですか?
- 13. 複数のランチャーアクティビティを持つことは可能ですか?
- 14. 複数のJOptionPaneダイアログを持つことは可能ですか?
- 15. クラスのグローバルインスタンスを持つことは可能ですか?
- 16. Funcの配列を持つことは可能ですか
- 17. .htaccess特定のフォルダ内でのみリダイレクト
- 18. 引数を持つPythonクラスのデコレータを持つことは可能ですか?
- 19. 標準ユーザートークン(Windows 10)でSeCreateGlobalPrivilege特権を持つことは可能ですか?
- 20. Apache 2:特定のドメインからのフォルダへのアクセスのみを許可する
- 21. 特定のデータセットに対して複数の有効なBSTを持つことは可能ですか?
- 22. 可変配列内のオブジェクトが2つの値を持つことは可能ですか?
- 23. URLからローカルパスを特定することは可能ですか?
- 24. 特定のフォルダからモジュールをロードする
- 25. Tomcatサーバーの内部にXMPPモジュールを置くことは可能ですか?
- 26. `Arc 'を使わずに`内部ポインタ `を持つことは可能ですか?
- 27. gdbインスタンスごとに1つのスレッドを持つことは可能ですか?
- 28. はサーバー上でのみアクセス可能な 'server'フォルダ内のサブディレクトリですか?
- 29. 特定のタイムスタンプでmongoDBのイベントをトリガすることは可能ですか?
- 30. モジュールをRubyの他のモジュールに含めることは可能ですか?
古くなったものを削除しますか? – miku
古いものをインポートしないでください。 –
古いものを別のフォルダに移動しますか? – unsym