基本上我有一个循环。每次执行循环中的代码时,都会发生这样的情况:
json_data.append({object_name : [string1, string2]})
所以我创建了很多数组,每个数组后面有2个值。
然后我就这样做:
json_file = json.dumps(json_data)
with open('test.json', 'w') as f:
json.dump(json_file, f, ensure_ascii=False)
问题是我得到的输出如下:
"[{\"cat\": [\"female\", \"fish\"]}, {\"pig\": [\"male\", \"carrots\"]}, {\"dog\": [\"male\", \"dogfood"]}]"
我认为这是错误的,因为:它以双引号开头,表示所有内容都是字符串而不是JSON。之后在每个对象中有一个转义序列而不是引号。我该如何解决这一切?
1条答案
按热度按时间juzqafwq1#
别再甩两次了。生成JSON,然后将结果字符串编码为JSON。