将Python字典转换为JSON数组

目前,我有这本词典,使用印刷pprint

{'AlarmExTempHum': '\x00\x00\x00\x00\x00\x00\x00\x00',  

'AlarmIn': 0,

'AlarmOut': '\x00\x00',

'AlarmRain': 0,

'AlarmSoilLeaf': '\x00\x00\x00\x00',

'BarTrend': 60,

'BatteryStatus': 0,

'BatteryVolts': 4.751953125,

'CRC': 55003,

'EOL': '\n\r',

'ETDay': 0,

'ETMonth': 0,

'ETYear': 0,

'ExtraHum1': None,

'ExtraHum2': None,

'ExtraHum3': None,

'ExtraHum4': None,

'ExtraHum5': None,

'ExtraHum6': None,

'ExtraHum7': None,

'ExtraTemp1': None,

'ExtraTemp2': None,

'ExtraTemp3': None,

'ExtraTemp4': None,

'ExtraTemp5': None,

'ExtraTemp6': None,

'ExtraTemp7': None,

'ForecastIcon': 2,

'ForecastRuleNo': 122,

'HumIn': 31,

'HumOut': 94,

'LOO': 'LOO',

'LeafTemps': '\xff\xff\xff\xff',

'LeafWetness': '\xff\xff\xff\x00',

'NextRec': 37,

'PacketType': 0,

'Pressure': 995.9363359295631,

'RainDay': 0.0,

'RainMonth': 0.0,

'RainRate': 0.0,

'RainStorm': 0.0,

'RainYear': 2.8,

'SoilMoist': '\xff\xff\xff\xff',

'SoilTemps': '\xff\xff\xff\xff',

'SolarRad': None,

'StormStartDate': '2127-15-31',

'SunRise': 849,

'SunSet': 1611,

'TempIn': 21.38888888888889,

'TempOut': 0.8888888888888897,

'UV': None,

'WindDir': 219,

'WindSpeed': 3.6,

'WindSpeed10Min': 3.6}

当我这样做时:

import json

d = (my dictionary above)

jsonarray = json.dumps(d)

我收到此错误: 'utf8' codec can't decode byte 0xff in position 0: invalid start

byte

回答:

如果您可以在json中使用不可打印的符号,请添加ensure_ascii=Falsedumps通话中。

>>> json.dumps(your_data, ensure_ascii=False)

如果ensure_ascii是假的,那么返回值将是一个 unicode实例受到正常的Pythonstrunicode

强制规则,而不是被转义为ASCII str

以上是 将Python字典转换为JSON数组 的全部内容, 来源链接: utcz.com/qa/398640.html

回到顶部