sys.path
,os.path
とは?
機械学習の手書き数字認識という問題で,データセットを呼び出すときに遭遇.
-
sys.path
の中身はリスト- モジュールを検索するパスを示す文字列のリスト
- 起動時に初期化された後,リストの先頭(
path[0]
)にはPythonインタプリタを起動したスクリプトのあるディレクトリが挿入される
-
os.path
はモジュールで,中身はパス名を操作する関数などが入っている
sys.path
,os.path
で何ができるのか?
-
sys.path.argv()
:Pythonスクリプトに渡されたコマンドライン引数のリスト-
argv[0]
はスクリプトの名前となる
-
-
sys.path.append()
:sys.path
に引数内のパスを加える操作を行う-
sys.path.append(os.pardir)
:os.pardir
は親ディレクトリを表す文字列定数 - これは,親ディレクトリのファイルをインポートするための設定
-
-
os.path.join()
:引数の複数の値をつなげてパスにする関数
まとめ:
- システムパラメータや関数をいじるときに
sys
やos
モジュールを用いる - データセットの呼び出しという今回の目的に限れば,
sys.path.append(os.pardir)
の意味するところは,**「システムに親ディレクトリまでのパスを加える」**といったところか.