我正在尝试使用json.loads
来解析Redshift数据库表中的数据。我已经删除了要在Python脚本中测试的函数,并且无法理解正在发生的事情。
我正在使用的代码是:
import json
j="'['Bars', 'American (Traditional)', 'Nightlife', 'Restaurants']'"
def trythis(item, reverse):
if not j:
return '1'
try:
arr = json.loads(j)
except ValueError:
return '2'
if not ascending:
arr = sorted(arr, reverse=True)
else:
arr = sorted(arr)
return json.dumps(arr)
print trythis(j, True)
这将返回2
。
我尝试将输入变量更改为j="['Bars', 'American (Traditional)', 'Nightlife', 'Restaurants']"
,但这没有用。我的入门价格需要什么格式?
答案 0 :(得分:1)
您的输入字符串j
无效JSON。 JSON不允许使用单引号('
)来表示字符串值。
尝试切换引号:'["Bars", "American (Traditional)", "Nightlife", "Restaurants"]'
JSON规范是确定您的输入是否为有效JSON的绝佳资源。您可以在此处找到它:http://www.json.org/