json.dumps()转换dict为json时,可以保留双引号,不变为单引号

json.dumps解决reuqest中data类型转换的问题

  • 问题描述
    • 已知
    • 问题
  • 解决方法
  • 总结
  • selfQ&A

问题描述

已知

    request_content = [{"content" : "问题描述" , "category" : "问题"} ,
    				   {"content" : "今天天气多少度?" , "category" : "问题"}]

想要得到request给后台的结果。request的方法使用

requests.request(url, header=header, data=request_content)								

其中,data参数需要传入字符串,不能传入list对象。

问题

1.直接使用str()将request_content转换为str类型,会出现双引号变为单引号的问题,导致后台处理出错。

request_content = [{"content": "问题描述", "category": "问题"},
                   {"content": "今天天气多少度?", "category": "问题"}]
print(str(request_content))

output:

[{'category': '问题', 'content': '问题描述'}, {'category': '问题', 'content': '今天天气多少度?'}]

2.忘记拼接成”data=content"的形式

解决方法

1.使用json.dumps(),将python内置对象转换为json字符串。json字符串还是字符串类型,只不过是json格式的字符串。
2.使用字符串拼接,加上“data=”

总结

对于python web处理的相关知识点不了解。不知道使用json.dumps()。

selfQ&A

1.为什么request()不直接使用list类型?
request()方法的data参数可以传入list、dict等,不仅仅是str类型。这和后台接受的类型有关系。

你可能感兴趣的:(编程)