jsonをバイトではなく文字列としてエコーする方法

jsonをバイトではなく文字列としてエコーする方法

jsonをファイルに書き込もうとしています。

echo '{ "date":"2020-02-10 10:09:34" }' > file.json

ただし、読み取るときはバイトから文字列にデコードする必要があります。読むときにデコードが必要ないように書きたいです。

これが私がPythonで読む方法です:

with open("file.json", "rb") as f: config_file = json.loads(f.read())

答え1

Python開いている()この関数には2つのパラメータがあります。1つ目は開こうとしているファイル、2つ目はファイルを開くモードです。モードには次のオプションがあります。

ファイルを開くモードを定義する文字列: "r" - 読み取り - デフォルト。読み取るためにファイルを開きます。ファイルが存在しない場合、エラーが発生します。

"a" - 追加 - 追加するファイルを開くか、ファイルがない場合は作成します。

"w" - 書き込み - 書き込み用にファイルを開くか、ファイルがない場合は作成します。

"x" - 作成 - 指定されたファイルを作成し、ファイルが存在する場合はエラーを返します。

また、ファイルをバイナリまたはテキストモードで処理する必要があるかどうかを指定することもできます。

"t" - テキスト - デフォルト。テキストモード

"b" - バイナリ - バイナリモード(例:画像)

そのオプションを指定したので、bファイルはテキストファイルには望ましくないバイナリモードで開きます。テキストモードはデフォルトモードなので、テキストモードbに変更したり完全にt削除したりできます。b

関連情報