如何在python中将列表转换为jsonarray

时间:2013-11-05 17:23:57

标签: python json

我有以下格式的行:

row = [1L,[0.1,0.2],[[1234L,1],[134L,2]]]

现在,我想要的是在文件中写下以下内容:

[1,[0.1,0.2],[[1234,1],[134,2]]]

基本上将上面转换为jsonarray?

是否有内置方法,python中的函数将“转储”数组转换为json数组?

另请注意,我不希望在我的文件中序列化“L”。

2 个答案:

答案 0 :(得分:73)

使用json module生成JSON输出:

import json

with open(outputfilename, 'wb') as outfile:
    json.dump(row, outfile)

这会将JSON结果直接写入文件(如果文件已经存在,则替换以前的任何内容)。

如果您需要Python本身的JSON结果字符串,请使用json.dumps()(为{string'添加s):

json_string = json.dumps(row)

L只是一个长整数值的Python语法; <{1}}库知道如何处理这些值,不会写json

演示字符串输出:

L

答案 1 :(得分:11)

import json
row = [1L,[0.1,0.2],[[1234L,1],[134L,2]]]
row_json = json.dumps(row)