Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中解析JSON并写入Excel文件_Python_Json - Fatal编程技术网

在Python中解析JSON并写入Excel文件

在Python中解析JSON并写入Excel文件,python,json,Python,Json,我将以下JSON保存在一个名为test.xlsx.txt的文本文件中。JSON如下所示: {"RECONCILIATION": {0: "Successful"}, "ACCOUNT": {0: u"21599000"}, "DESCRIPTION": {0: u"USD to be accrued. "}, "PRODUCT": {0: "7500.0"}, "VALUE": {0: "7500.0"}, "AMOUNT": {0: "7500.0"}, "FORMULA": {0: "3 *

我将以下JSON保存在一个名为test.xlsx.txt的文本文件中。JSON如下所示:

{"RECONCILIATION": {0: "Successful"}, "ACCOUNT": {0: u"21599000"}, "DESCRIPTION": {0: u"USD to be accrued. "}, "PRODUCT": {0: "7500.0"}, "VALUE": {0: "7500.0"}, "AMOUNT": {0: "7500.0"}, "FORMULA": {0: "3 * 2500 "}}
以下是我的python代码:

f = open(path_to_analysis_results,'r')
message = f.read()
datastore = json.loads(str(message))
print datastore
f.close()
在json.loads中,我得到了错误“ValueError:Expecting属性名:第1行第21列(char 20)”。我试过使用json.load、json.dump和json.dump,它们都会出现各种错误。我想做的就是能够提取密钥和相应的值,并写入Excel文件。我已经知道了如何将数据写入Excel文件,但仍在解析这个json

RECONCILIATION : Successful
ACCOUNT : 21599000
DESCRIPTION : USD to be accrued.
PRODUCT : 7500.0
VALUE : 7500.0
AMOUNT : 7500.0
FORMULA : 3 * 2500

我希望数据采用上述格式,以便能够将其写入Excel工作表。

您的txt文件不包含有效的JSON

首先,键必须是字符串,而不是数字

u“…”
符号也无效


您应该首先修复JSON(可能通过一个过梁来运行它,以确保它是有效的)。

您的txt文件不包含有效的JSON

首先,键必须是字符串,而不是数字

u“…”
符号也无效


您应该首先修复JSON(可能通过一个过梁来运行它,以确保它是有效的)。

正如Mike提到的,您的文本文件不是有效的JSON。应该是这样的:

{"RECONCILIATION": {"0": "Successful"}, "ACCOUNT": {"0": "21599000"}, "DESCRIPTION": {"0": "USD to be accrued. "}, "PRODUCT": {"0": "7500.0"}, "VALUE": {"0": "7500.0"}, "AMOUNT": {"0": "7500.0"}, "FORMULA": {"0": "3 * 2500 "}}
注意:键在双引号内,因为JSON需要双引号。并且,您的代码应该是(没有str()):


正如Mike提到的,您的文本文件不是有效的JSON。应该是这样的:

{"RECONCILIATION": {"0": "Successful"}, "ACCOUNT": {"0": "21599000"}, "DESCRIPTION": {"0": "USD to be accrued. "}, "PRODUCT": {"0": "7500.0"}, "VALUE": {"0": "7500.0"}, "AMOUNT": {"0": "7500.0"}, "FORMULA": {"0": "3 * 2500 "}}
注意:键在双引号内,因为JSON需要双引号。并且,您的代码应该是(没有str()):