Python Language
os.path
サーチ…
前書き
このモジュールは、パス名にいくつかの便利な機能を実装しています。パスパラメータは、文字列またはバイトとして渡すことができます。アプリケーションでは、ファイル名を(Unicode)文字列として表現することをお勧めします。
構文
- os.path.join(a、* p)
- os.path.basename(p)
- os.path.dirname(p)
- os.path.split(p)
- os.path.splitext(p)
パスを結合する
2つ以上のパスコンポーネントを一緒に結合するには、最初にPythonのosモジュールをインポートし、次のように使用します。
import os
os.path.join('a', 'b', 'c')
os.pathを使用する利点は、実行中のプラットフォームに適した区切り文字を使用するため、すべてのオペレーティングシステムでコードの互換性を維持できることです。
たとえば、Windowsでのこのコマンドの結果は次のようになります。
>>> os.path.join('a', 'b', 'c')
'a\b\c'
Unix OSの場合:
>>> os.path.join('a', 'b', 'c')
'a/b/c'
相対パスからの絶対パス
os.path.abspath
使用します。
>>> os.getcwd()
'/Users/csaftoiu/tmp'
>>> os.path.abspath('foo')
'/Users/csaftoiu/tmp/foo'
>>> os.path.abspath('../foo')
'/Users/csaftoiu/foo'
>>> os.path.abspath('/foo')
'/foo'
パスコンポーネント操作
1つのコンポーネントをパスから分離するには:
>>> p = os.path.join(os.getcwd(), 'foo.txt')
>>> p
'/Users/csaftoiu/tmp/foo.txt'
>>> os.path.dirname(p)
'/Users/csaftoiu/tmp'
>>> os.path.basename(p)
'foo.txt'
>>> os.path.split(os.getcwd())
('/Users/csaftoiu/tmp', 'foo.txt')
>>> os.path.splitext(os.path.basename(p))
('foo', '.txt')
親ディレクトリを取得する
os.path.abspath(os.path.join(PATH_TO_GET_THE_PARENT, os.pardir))
指定されたパスが存在する場合。
指定されたパスが存在するかどうかを確認する
path = '/home/john/temp'
os.path.exists(path)
#this returns false if path doesn't exist or if the path is a broken symbolic link
指定されたパスがディレクトリ、ファイル、シンボリックリンク、マウントポイントなどであるかどうかを確認してください。
指定されたパスがディレクトリかどうかを調べる
dirname = '/home/john/python'
os.path.isdir(dirname)
指定されたパスがファイルかどうかを調べる
filename = dirname + 'main.py'
os.path.isfile(filename)
指定されたパスがシンボリックリンクかどうかを調べる
symlink = dirname + 'some_sym_link'
os.path.islink(symlink)
指定されたパスがマウントポイントかどうかを確認する
mount_path = '/home'
os.path.ismount(mount_path)
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow