WHCSRL 技术网

为什么在Python中处理json字符串时不建议使用eval()

我。前言

最近发现有些小伙伴用eval来处理json,为了能顺利将json转成字典而不报错,他们还写了如下赋值操作(因为json的空心是null , False 是 false, true 是 true 和 Python 的表达式不一样,如果不赋值下面的代码,会得到一个如果使用 eval 转换会出错):

null =
false=False
true=True
  • 1
  • 2
  • 3
<小时>

其实Python的标准库中有一个处理json的库,叫做json。比如你想把一个json字符串转成字典,只需要使用 json.loads 方法就可以了;另外,eval处理json的性能远不如json库。

<小时>

2. Json.loads与eval性能对比

现在我们创建一个长度为100万的json字符串数据:

test_data  = json.dumps({