首页 > 解决方案 > 单引号内的列表

问题描述

我有一个单引号列表。

'[{"Name":"name1","value":"value1"},{"name":"name2","value":"value2"}]'

我将其作为输入参数接收,我想将其分配给一个变量,而无需在 python 中包含单引号。

能否请你帮忙?

收到的样本数据接近以下内容..

 '[{"name":"emp_id","value":3232323},{"name":"dd_approval","value":"-paid -fulltime \"05/03/21 19:46\" \"05/04/21 19:46\" xyz@dmuil.com 3232323"}]'
 json.loads(this string)  

给出如下错误

File "/usr/lib64/python2.7/json/__init__.py", line 338, in loads
return _default_decoder.decode(s)
File "/usr/lib64/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib64/python2.7/json/decoder.py", line 384, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded

标签: pythonarrayslistpython-2.7

解决方案


你所拥有的不是一个list,而是一个表示对象列表的 JSON 字符串,在 pytohn 中加载它会导致list一个dict

import json
a = '[{"Name":"name1","value":"value1"},{"name":"name2","value":"value2"}]'
content = json.loads(a)
print(content) # [{'Name': 'name1', 'value': 'value1'}, {'name': 'name2', 'value': 'value2'}]

推荐阅读