yas*_*sar 9 python json dictionary eval
我从远程服务器获取一个json对象,并将其转换为python字符串,如下所示:
a = eval(response)
Run Code Online (Sandbox Code Playgroud)
这有什么愚蠢的,或者我有更好的选择吗?
Ned*_*der 15
使用eval
不是处理JSON的好方法:
JSON甚至不是有效的Python,因为true
,false
和null
.
eval
将执行任意Python代码,因此您可能会恶意注入代码.
请使用json
标准库中提供的模块:
import json
data = json.loads("[1, 2, 3]")
Run Code Online (Sandbox Code Playgroud)
如果您使用的是2.6以上的Python版本,则需要自行下载该模块.它被调用simplejson
,可以从PyPi下载.