我想用python将json文件转换成csv文件。我为此写了一个脚本,但是脚本不能正常工作。我的json模板看起来像
{
"-K6v8Ht6nXCjaO_ApNGr" : {
"key1" : 0,
"key2" : false,
"key3" : 0,
"key4" : 0,
"key5" : "01/01/2016 04:04",
"key" : "-K6v8Ht6nXCjaO_ApNGr",
"key6" : "01/01/2016 04:04",
"key7" : 23,
"key8" : 0,
"key9" : {
"date" : 1,
"day" : 5,
"hours" : 4,
"minutes" : 4,
"month" : 0,
"seconds" : 56,
"time" : 1451617496647,
"timezoneOffset" : -60,
"year" : 116
},
"triedConnector" : {
"OPENSL" : -1,
"SAPA" : -1,
"USB" : -1,
"USB_7" : -1
},......
我的脚本(V3.x):
^{pr2}$在这个脚本中,首先for循环应该像
-K6v8Ht6nXCjaO_ApNGr
-K6v8Ht6nXCjaO_ApNGr
-K6v8Ht6nXCjaO_ApNGr
它工作得很好,但不幸的是,我的第二个for循环将这个输出输出到我的csv文件
-KjR-JvTm3BKVkYWoyTV
-Kj5ZdfgX8lLLi-htqPU
-KkC4t0XQoJDViNqt18n
False
"{u'seconds': 18, u'year': 117, u'month': 4, u'hours': 8, u'time': 1494223818226L, u'date': 8, u'minutes': 10, u'day': 1, u'timezoneOffset': -120}"
0
08/05/2017 08:10
"{u'OPENSL': -1, u'USB_7': -1, u'SAPA': -1, u'USB': -1}"
08/05/2017 08:10
-KjafVrmb_wuwb36xNq0
0
23
0
0
我想要一个水平的输出,这也是我的第三个循环嵌套对象,但当我试图运行我的脚本为最后一个循环,我得到了这个错误:
AttributeError: 'bool' object has no attribute 'values'.
很快我的问题是我需要这样的水平输出
K6v8Ht6nXCjaO_ApNGr 0, false, 0, 0, 01/01/2016 04:04, -K6v8Ht6nXCjaO_ApNGr K6v8Ht6nXCjaO_ApNGr 0, false, 0, 0, 01/01/2016 04:04, -K6v8Ht6nXCjaO_ApNGr
有谁能帮我理解和解决这些问题吗。谢谢你
我假设您的json会是这样的,所以我基于以下内容编写了脚本:
代码:
^{pr2}$输出:
除了csv字段的顺序不同外,此代码似乎可以执行您想要的操作。正常情况下这没关系。我还试图让代码解释它在做什么。在
json是您在问题中提供的三个副本,稍作修改以正确编译,同时更改了主键。在
打印在标准输出上的结果:
^{pr2}$csv文件:
正如csv.writer documentation中所说:
把这条线修好:
相关问题 更多 >
编程相关推荐