Pythonでバイト配列をJSON形式に変換するにはどうすればよいですか?
文字列を生成するには、bytesオブジェクトをデコードする必要があります。これは、デコードするエンコードを受け入れる文字列クラスのデコード関数を使用して実行できます。
my_str = b"Hello" # b means its a byte string new_str = my_str.decode('utf-8') # Decode using the utf-8 encoding print(new_str)
Hello
バイトを文字列として取得したら、JSON.dumpsメソッドを使用して文字列オブジェクトをJSONに変換できます。
my_str = b'{"foo": 42}' # b means its a byte string new_str = my_str.decode('utf-8') # Decode using the utf-8 encoding import json d = json.dumps(my_str) print(d)
"{\"foo\": 42}"
-
辞書の文字列表現をPythonの辞書に変換するにはどうすればよいですか?
ここでast.literal_eval()を使用して、文字列をPython式として評価できます。式ノードまたはPython式を含む文字列を安全に評価します。提供される文字列またはノードは、次のPythonリテラル構造のみで構成されます:文字列、数値、タプル、リスト、dict、ブール値、およびなし。例: s = "{'baz' : 'lol', 'foo' : 'bar'}" import ast s = ast.literal_eval(s) print s['foo'], s['baz
-
バイトリテラルをPython文字列に変換する方法は?
バイトリテラルをPython文字列に変換するには、バイトをデコードする必要があります。これは、bytesオブジェクトのdecodeメソッドを使用して実行できます。 例 >>> b"abcde".decode("utf-8") u'abcde' バイトがASCIIエンコーディングを表す場合は、次のようにバイトをchrにマップすることもできます- bytes = [112, 52, 52] print("".join(map(chr, bytes))) 出力 p44