gpt4 book ai didi

python - 如何反序列化 python 打印的字典?

转载 作者:行者123 更新时间:2023-11-28 19:37:39 26 4
gpt4 key购买 nike

我在数据库中将 python 的 str 字典表示为 varchars,我想检索原始的 python 字典

如何根据 dictionay 的 str 表示再次拥有字典?

例子

>>> dic = {u'key-a':u'val-a', "key-b":"val-b"}
>>> dicstr = str(dic)
>>> dicstr
"{'key-b': 'val-b', u'key-a': u'val-a'}"

在示例中,将把 dicstr 变回可用的 python 字典。

最佳答案

使用 ast.literal_eval() 并且在这种情况下更喜欢 repr() 而不是 str(),因为 str() 不保证字符串可以转换回有用的对象。

In [7]: import ast

In [10]: dic = {u'key-a':u'val-a', "key-b":"val-b"}

In [11]: strs = repr(dic)

In [12]: strs
Out[12]: "{'key-b': 'val-b', u'key-a': u'val-a'}"

In [13]: ast.literal_eval(strs)
Out[13]: {u'key-a': u'val-a', 'key-b': 'val-b'}

关于python - 如何反序列化 python 打印的字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13165479/

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