gpt4 book ai didi

Python:将字典转换为字节

转载 作者:太空宇宙 更新时间:2023-11-04 02:03:17 26 4
gpt4 key购买 nike

我正在尝试将字典转换为字节,但在将其转换为正确格式时遇到问题。

首先,我尝试用自定义模式映射字典。 Schema定义如下-

class User:
def __init__(self, name=None, code=None):
self.name = name
self.code = code

class UserSchema:
name = fields.Str()
code = fields.Str()

@post_load
def create_userself, data):
return User(**data)

我的词典结构如下-

user_dict = {'name': 'dinesh', 'code': 'dr-01'} 

我正在尝试使用以下代码将字典映射到用户模式

schema = UserSchema(partial=True)
user = schema.loads(user_dict).data

在执行时,schema.loads 期望输入为 str、bytes 或 bytearray。以下是我将字典转换为字节的步骤

import json
user_encode_data = json.dumps(user_dict).encode('utf-8')
print(user_encode_data)

输出:

b'{"name ": "dinesh", "code ": "dr-01"}

如果我尝试与架构进行映射,我将无法获得所需的架构对象。但是,如果我有下面给出的格式的输出,我就可以获得正确的模式对象。

b'{\n  "name": "dinesh",\n  "code": "dr-01"}\n'

有什么建议可以将字典转换为字节吗?

最佳答案

您可以在 json.dumps() 中使用 indent 选项来获取 \n 符号:

import json

user_dict = {'name': 'dinesh', 'code': 'dr-01'}
user_encode_data = json.dumps(user_dict, indent=2).encode('utf-8')
print(user_encode_data)

输出:

b'{\n  "name": "dinesh",\n  "code": "dr-01"\n}'

关于Python:将字典转换为字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55277431/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com