将Javascript数组转换为python列表?

时间:2012-05-17 19:00:26

标签: python

我想制作google trasnlate脚本。 我正在请求translate.google.com和google返回一个数组,但该数组包含未定义的项目。您可以将响应视为字符串。 我可以删除逗号,如果有多个连续的正则表达式等,但我看起来最好的解决方案:)

如何将此javascript数组转换为python列表?

["a","b",,,"e"]

我的脚本:http://ideone.com/jhjZe

1 个答案:

答案 0 :(得分:14)

JavaScript部分 - 编码

在Javascript中你做:

var arr = ["a","b",,,"e"];
var json_string = JSON.stringify(arr);

然后你以某种方式将json_string(现在等于“["a","b",null,null,"e"]”字符串)从JavaScript传递给Python。

Python部分 - 解码

然后,在Python端做:

json_string = '["a","b",null,null,"e"]'  # passed from JavaScript

try:
    import simplejson as json
except (ImportError,):
    import json

result = json.loads(json_string)

因此,您在Python中获得[u'a', u'b', None, None, u'e']

更多链接

见下文:

依赖关系

以上解决方案要求:

    JavaScript中的
  • JSON.stringify(),适用于所有移动浏览器,Chrome,Firefox,Opera,Safari和自8.0版以来的IE(兼容浏览器的详细列表为here),
  • json Python库(上面的代码将可选地使用simplejson,如果可用,但不是必需的),它来自标准库,

因此,简而言之,没有外部依赖