我正在尝试将字典转换为字节,但在将其转换为正确的格式时遇到问题。
首先,我尝试使用自定义架构映射字典。模式定义如下 -
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
在做的同时,模式.负载期望输入为 str、bytes 或 bytearray。以下是我将字典转换为字节所遵循的步骤
import json
user_encode_data = json.dumps(user_dict).encode('utf-8')
print(user_encode_data)
Output:
b'{"name ": "dinesh", "code ": "dr-01"}
如果我尝试使用架构进行映射,我将无法获得所需的架构对象。但是,如果我有下面给出的格式的输出,我就能够获得正确的模式对象。
b'{\n "name": "dinesh",\n "code": "dr-01"}\n'
有什么建议如何将字典转换为字节吗?