Pythonでファイル操作を行う際、特に日本語を含むパスを扱う場合には注意が必要です。ここでは、Pythonのglob
モジュールを使用して日本語パスを扱う方法について解説します。
globとは
glob
はPythonのモジュールの一つで、特定のパターンにマッチするファイル名を取得するために使用します。glob
関数にファイルのマッチング条件を引数として与えると、その条件にマッチしたファイルを返してくれます。
日本語パスの取り扱い
日本語を含むパスを扱う際には、エンコーディングの問題が発生する可能性があります。Pythonの標準文字エンコーディングはUTF-8なので、プログラムで日本語を扱う場合にはUTF-8に統一しておくと、余計なトラブルを避けられます。
以下に、日本語を含むパスを開くためのコード例を示します。
# 絶対パス
with open('C:\\Users\\user\\Documents\\src\\techacademy\\tmp\\サンプル.txt', encoding='utf-8') as f:
print(f.read())
# 相対パス
with open('サンプル.txt', encoding='utf-8') as f:
print(f.read())
この例では、open
関数のencoding
引数に'utf-8'
を指定しています。これにより、UTF-8でエンコードされた日本語を含むパスを正しく開くことができます。
まとめ
Pythonで日本語を含むパスを扱う際には、glob
モジュールとエンコーディングの指定を適切に使用することが重要です。これにより、日本語パスのファイル操作をスムーズに行うことができます。