2009-09-02 16 views
6

私の.pthファイルにリストされているディレクトリがsys.pathに表示されません。Pythonの.pthファイルが機能しない

some_code_dirs.pthという名前の設定ファイルの内容は、:ファイルへ

/home/project 

パス:Pythonインタプリタ内のsys変数の

/usr/lib/python2.6/site-packages/some_code_dirs.pth 
/usr/lib/python2.6/some_code_dirs.pth 

チェック:

>>> print sys.prefix 
'/usr' 
>>> print sys.exec_prefix 
'/usr' 

このすべてPython documentationで必要と思われるが、sys.path doesn '/home/projectディレクトリを含めます。

>>> site.addsitedir('/usr/lib/python2.6/site-packages') 

私はここで何をしないのです:?通訳は後にディレクトリを追加しないことを

注意

+1

'sys.path'の値を入れてください。 –

答えて

4

使用しているOSは何ですか?私のUbuntu 9.04システムでは、そのディレクトリはsys.pathにありません。 /usr/lib/python2.6/dist-packagesに入れてみてください。 サイトの代わりにdistであることに注目してください。

+0

うん、Ubuntuは、パッケージングシステムに適合させるために、Pythonのライブラリパスで奇妙で複雑なことをしています。デフォルトの標準コンパイルPythonインストールと同じ場所にはほとんどありません。 :-( – bobince

+1

これはうまくいきました - distパッケージの.pthファイルで、/ home/project_rootがインタプリタのsys.pathに表示されます /usr/lib/python2.6 _ sys_pathの_is_ .pthファイルのコピーがそのディレクトリにあるので、なぜPythonがそれを選んでいないのか分かりません。私もUbuntu設定の問題だと思います。 私は卵ですが、これは奇妙に思えますUbuntuの人々の選択肢のセット。 – chernevik

+0

私は、Pythonインタプリタがsys.pathのすべてのパスから.pthファイルをインポートするとは思わない。 –

0

私はsimilar problemを持っていました。 pthファイルのエンコーディングを確認してください。 BOMを使用してUTF-8でエンコードされていると、pthファイルは暗黙的に無視されるようです。

+0

"BOM付きUTF-8"は偽であり、理解できないASCIIと互換性があります(これはp番目のファイルです)!Linuxの箱で見られるのは奇妙ですが、それは通常、それらを生成するWindowsアプリケーションだけです。 – bobince

関連する問題