gpt4 book ai didi

python - 将字符串转换为字典?

转载 作者:IT老高 更新时间:2023-10-28 22:23:31 32 4
gpt4 key购买 nike

我有一个脚本,可以将 dict 更改为字符串并将其保存到文件中。然后我想加载该文件并将其用作字典,但它是一个字符串。是否有类似 int("7") 的东西可以将格式化为 dict ({a: 1, b: 2}) 的字符串更改为 dict?我试过 dict(),但这似乎不是它的作用。我听说过一些涉及 JSON 和 eval() 的过程,但我真的不明白这是做什么的。该程序加载它保存的相同数据,如果有人编辑它并且它不起作用,那不是我的问题(我不需要任何高级方法来确认 dict 数据或任何东西)。

最佳答案

试试这个,这是最安全的方法:

import ast
ast.literal_eval("{'x':1, 'y':2}")
=> {'y': 2, 'x': 1}

所有基于 eval() 的解决方案都是危险的,恶意代码可能被注入(inject)到字符串中并被执行。

根据documentation表达式得到安全评估。此外,根据 source code , literal_eval 将字符串解析为 python AST(源树),并且仅当它是文字时才返回。代码永远不会被执行,只会被解析,所以没有理由让它成为安全风险。

关于python - 将字符串转换为字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13675942/

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