2017-06-14 30 views
0

現在のディレクトリの下にpythonスクリプトがあります。sub/code.pyです。 subディレクトリには他のスクリプトと__init__.pyがあるので、パッケージとして機能します。私の現在のディレクトリからsys.pathとos.getcwd()の不一致?

python -i sub/code.py 
>>> import sys 
>>> sys.path[0] 
'/home/name/folder/current_directory/sub' 
>>> import os 
>>> os.getcwd() 
'/home/name/folder/current_directory' 
>>> 

は、このように意見を異にすることになっos.getcwd()sys.path[0]ていますか?私が理解しているように、両方とも現在のディレクトリを参照する必要がありますが、この場合はos.getcwd()だけです。

答えて

0

私の経験では、sys.path[0]は空の文字列で、現在のディレクトリを評価します。

subモジュールにコードがありますか?sys.path

+0

「sys」はインポートされていません。 – CannedSpinach

0

これは実際にOPの質問に答えるものではありません。

Mac OSXのos.getcwd()の動作が、Mac OSXの動作と異なっていることがありました。 PHPで。

test_getcwd.py:

Michaels-MacBook-Air:~ michag$ python3 /Users/michag/Documents/aaa_raspbian/ddpos_ddpi_3/boot/test_getcwd.py 
/Users/michag 

/ユーザ/ michagは明らかに同じである〜、に等しい:

from os import getcwd 
print (getcwd()) 

は、現在のユーザー・パスではなく、実行中のスクリプトのパスを出力。