python eval vs ast.literal_eval vs JSON解码

python eval vs ast.literal_eval vs JSON解码,第1张

python eval vs ast.literal_eval vs JSON解码

我真的不喜欢这种对stackoverflow(以及其他地方)的态度,告诉没有任何上下文的人们他们所做的事情是不安全的,他们不应该这样做。也许这只是导入某些数据的一次性脚本,在这种情况下,为什么不选择最快或最方便的方式呢?

但是,在这种情况下,

json.loads
它不仅更安全,而且速度快4倍以上(取决于您的数据)。

In [1]: %timeit json.loads(data)10000 loops, best of 3: 41.6 µs per loopIn [2]: %timeit eval(data)10000 loops, best of 3: 194 µs per loopIn [3]: %timeit ast.literal_eval(data)1000 loops, best of 3: 269 µs per loop

如果您认为它有意义,那么json是一种比python更受限制的语言/格式,因此使用优化的解析器进行解析必须更快。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5666642.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存