Pythonのopen関数でファイルパスの指定に便利なraw文字列(パス先頭に付けるr)とは

Pythonの文字列でr(raw文字列)を使用すると、エスケープシーケンス(バックスラッシュ の後に特殊な文字を表す文字列)を解釈しないように指定できます。これは特にファイルパスなどのパス文字列を指定する際に便利です。通常、バックスラッシュはエスケープ文字として使われますが、ファイルパスなどにバックスラッシュが含まれる場合、エスケープ文字として解釈されずそのままの文字として扱いたいことがあります。

以下は、r(raw文字列)を使用しない通常の文字列と、rを使用したraw文字列の例です:

通常の文字列:

python
path = "C:\Users\Username\Documents\file.txt" print(path)

この場合、バックスラッシュがエスケープ文字として解釈され、正確なファイルパスが取得できません。

raw文字列 (rを使用):

python
path = r"C:UsersUsernameDocumentsfile.txt" print(path)

rを使用した場合、バックスラッシュはエスケープ文字として解釈されず、そのままの文字として扱われます。これにより、正確なファイルパスが得られます。

ファイルパスなどの文字列を扱う場合、特にWindowsファイルパスのようにバックスラッシュを多く含む場合、rを使用するとバックスラッシュのエスケープに関する問題を回避できます。