質問
はPythonのsys.パスに初期化された。
UPD:Pythonは追加パスを前に参照PYTHONPATH:
>>> import sys
>>> from pprint import pprint as p
>>> p(sys.path)
['',
'C:\\Python25\\lib\\site-packages\\setuptools-0.6c9-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\orbited-0.7.8-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\morbid-0.8.6.1-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\demjson-1.4-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\stomper-0.2.2-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\uuid-1.30-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\stompservice-0.1.0-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\cherrypy-3.0.1-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\pyorbited-0.2.2-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\flup-1.0.1-py2.5.egg',
'C:\\Python25\\lib\\site-packages\\wsgilog-0.1-py2.5.egg',
'c:\\testdir',
'C:\\Windows\\system32\\python25.zip',
'C:\\Python25\\DLLs',
'C:\\Python25\\lib',
'C:\\Python25\\lib\\plat-win',
'C:\\Python25\\lib\\lib-tk',
'C:\\Python25',
'C:\\Python25\\lib\\site-packages',
'C:\\Python25\\lib\\site-packages\\PIL',
'C:\\Python25\\lib\\site-packages\\win32',
'C:\\Python25\\lib\\site-packages\\win32\\lib',
'C:\\Python25\\lib\\site-packages\\Pythonwin']
私PYTHONPATHには:
PYTHONPATH=c:\testdir
といったところだろうかそのパス前PYTHONPATHのものから来るのでしょうか?
解決
"初期化されからの環境変数PYTHONPATH、インストールに依存するデフォルト"
他のヒント
Python思うハードトセット sys.path
.どのようで
設定できる 本当に 複雑な.以下のガイドが、水をやり、
少し-不完全で、やや違いが、願わく-有用ガイド
の一般ファイルのpythonプログラマのどのようなときにpython
図うとして使用 初期値 の sys.path
,
sys.executable
, sys.exec_prefix
, は、 sys.prefix
a 通常の
python設置できます。
第一に、pythonはそのレベルをしながらその実体
場所にファイルシステムのベースに営業システムか
ます。の場合はOSでは"python"エネルギープラントが稼働できるようにするためのlibsoupおよそのものに$る。で解決いたしま象徴的なリンクになります。一度このパス
実行ができるようにするためのlibsoupおよ用の値として sys.executable
, は、if、
ands、buts.
次に、その決定の初期値 sys.exec_prefix
や
sys.prefix
.
がある場合はファイルと呼ばれ pyvenv.cfg
同じディレクトリとして
sys.executable
またはディレクトリは、pythonに見えます。異なる
Osいものはこのファイルです。
の値はこの設定ファイルとpythonの見が
の設定オプション home = <DIRECTORY>
.Pythonでは、このディレクトリの代わりにディレクトリを含む sys.executable
時に動的にセットの初期値 sys.prefix
ます。の場合 applocal = true
設定が表示される
pyvenv.cfg
Windows上のファイルではなく、 home = <DIRECTORY>
設定
その sys.prefix
設定できるディレクトリを含む sys.executable
.
次に、 PYTHONHOME
環境変数であることを示唆している。Linux,Mac
sys.prefix
や sys.exec_prefix
設定の PYTHONHOME
環境変数の場合
存在する superseding 他の home = <DIRECTORY>
設定 pyvenv.cfg
.Windows
sys.prefix
や sys.exec_prefix
設定さ PYTHONHOME
環境変数
がある場合はその ない限り a home = <DIRECTORY>
設定に存在 pyvenv.cfg
,
ができるようにしております。
その他、これらの sys.prefix
や sys.exec_prefix
から徒歩後退
の場所から sys.executable
, 又は home
ディレクトリによる pyvenv.cfg
のばかりでした。
の場合はファイル lib/python<version>/dyn-load
はディレクトリ
または当行の親ディレクトリ、そのディレクトリが設定される
sys.exec_prefix
LinuxまたはMacです。の場合はファイル
lib/python<version>/os.py
では、ディレクトリまたはその
サブディレクトリ、そのディレクトリに設定する sys.prefix
Linux
Mac、Windowsでは、 sys.exec_prefix
同じ値に設定して
sys.prefix
Windows上でしか利用できません。この全体のステップを飛Windowsの場合
applocal = true
を設定します。のいずれかのディレクトリ sys.executable
は
利用の場合 home
設定 pyvenv.cfg
, 使用するものではなく
の初期値 sys.prefix
.
ばんこう"のランドマーク"のファイル sys.prefix
れていない
ただ、そのpython設定 sys.prefix
る"フォールバック"
値とします。Linux、Mac、例えば、使用前のコンパイルされたデフォルトとしての
価値観 sys.prefix
や sys.exec_prefix
.Windows待ち
まで sys.path
完全に把握し設定フォールバック値
sys.prefix
.
その後、お住まいのお客様はお問い合わせもすべてが待ちに待った)pythonの決定の初期値
するに含まれる sys.path
.
- ディレクトリのスクリプトをpythonで実行が追加され
sys.path
.Windowsでは、これは常に空文字列かpythonへ 軒のフルパスでのスクリプトがあります。 - の内容PYTHONPATHの環境変数の設定した場合、
sys.path
, ない限り い Windowsでは、applocal
がtrueに設定しpyvenv.cfg
. - Zipファイルのパスである
<prefix>/lib/python35.zip
Linux/Macとos.path.join(os.dirname(sys.executable), "python.zip")
Windowsでは、sys.path
. - 場合は、Windowsとのない
applocal = true
設定したpyvenv.cfg
, その内容をsubkeysのレジストリキーHK_CURRENT_USER\Software\Python\PythonCore\<DLLVersion>\PythonPath\
追加されます。 - 場合は、Windowsとのない
applocal = true
設定したpyvenv.cfg
, は、sys.prefix
が見つからなかった, その後、 主な内容 には、レジストリキーHK_CURRENT_USER\Software\Python\PythonCore\<DLLVersion>\PythonPath\
追加がある場合はそれ; - 場合は、Windowsとのない
applocal = true
設定したpyvenv.cfg
, その内容をsubkeysのレジストリキーHK_LOCAL_MACHINE\Software\Python\PythonCore\<DLLVersion>\PythonPath\
追加されます。 - 場合は、Windowsとのない
applocal = true
設定したpyvenv.cfg
, は、sys.prefix
が見つからなかった, その後、 主な内容 には、レジストリキーHK_CURRENT_USER\Software\Python\PythonCore\<DLLVersion>\PythonPath\
追加がある場合はそれ; - の場合Windowsの場合、PYTHONPATHませんでしたセットでは、prefix見つかりませんでしたし、レジストリキーが存在し、その後の 相対的にコンパイル時の値PYTHONPATHを追加;それ以外の場合、このステップは無視されます。
- 経路のコンパイル時のマクロPYTHONPATHを追加への相対値で動的に見つかり
sys.prefix
. - MacおよびLinuxの値
sys.exec_prefix
が追加されます。Windows上のディレクトリ 使用された又はされてい使用に動的に検索のためのsys.prefix
は 追加されます。
この段階ではWindowsのない場合には接頭辞から明らかになった後pythonに努め
定めるのかということで検索 すべての のディレクトリ sys.path
のランドマークのファイル
そのためのディレクトリ sys.executable
前回までできるようにするためのlibsoupおよ。っていることを確認してください, sys.prefix
は白紙になっています。
最後に、Pythonの負荷の site
モジュールを加えるものなら sys.path
:
から始める必要がありま構築へのさまざまな取り組みディレクトリからヘッドと テール。のヘッド部分を用い
sys.prefix
やsys.exec_prefix
;空のヘッドはスキップします。のテール部分を利用して空の文字列 そのlib/site-packages
(Windows)またはlib/pythonX.Y/site-packages
そのlib/site-python
(UnixやMac).それぞれの 異なるヘッド-テールの組み合わせを見ている既存の ディレクトリ、その場合、追加でsys.経路も検査の 追加パスの設定ファイルです。