PythonでJSONファイルを読み込む際、相対パスを使用すると、環境によってはエラーが発生する可能性があります。この記事では、PythonでJSONファイルを相対パスで安全に読み込む方法を紹介します。
まず、Pythonのjson
モジュールをインポートします。
import json
次に、open
関数を使用してJSONファイルを開きます。ここでは、'r'
を指定して読み込みモードでファイルを開きます。
f = open('sample.json', 'r')
json.load
関数を使用して、開いたファイルをJSONファイルとして読み込みます。読み込まれたデータのタイプは辞書型となります。
dict_json = json.load(f)
最後に、open
したファイルはclose
メソッドを使用して閉じる必要があります。
f.close()
以上がPythonでJSONファイルを相対パスで読み込む基本的な方法です。しかし、この方法ではカレントディレクトリを基準としたパスとなり、環境が変わるとエラーが発生する可能性があります。そのため、各スクリプトの絶対パスを取得し、そこからの相対パスで読み込む方法が推奨されます。
import os
dirname = os.path.dirname(__file__)
filename = os.path.join(dirname, 'products.json')
with open(filename) as f:
print(f.read())
この方法を使用すれば、環境に依存せずに安全にJSONファイルを相対パスで読み込むことができます。