您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何将Python字典序列化为字符串,然后再返回字典?

如何将Python字典序列化为字符串,然后再返回字典?

这取决于您要使用它的目的。如果只是尝试保存它,则应使用pickle(或者,如果使用cpython 2.x,cPickle则速度更快)。

>>> import pickle
>>> pickle.dumps({'foo': 'bar'})
b'\x80\x03}q\x00X\x03\x00\x00\x00fooq\x01X\x03\x00\x00\x00barq\x02s.'
>>> pickle.loads(_)
{'foo': 'bar'}

如果您希望它可读,可以使用json

>>> import json
>>> json.dumps({'foo': 'bar'})
'{"foo": "bar"}'
>>> json.loads(_)
{'foo': 'bar'}

json但是,它支持功能非常有限,虽然pickle可以用于任意对象(如果它不能自动运行,则该类可以定义__getstate__以精确指定应如何对其进行腌制)。

>>> pickle.dumps(object())
b'\x80\x03cbuiltins\nobject\nq\x00)\x81q\x01.'
>>> json.dumps(object())
Traceback (most recent call last):
  ...
TypeError: <object object at 0x7fa0348230c0> is not JSON serializable
python 2022/1/1 18:36:15 有228人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶