pprint字典返回为unicode

2024-06-08 07:22:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用requests模块。并且,返回的数据是unicode,其中包含来自服务器的响应(字典)。有没有一种方法可以很好地打印这本Unicode字典?在

返回的响应如下所示:

u'<<200:{"id":"12345","key_x":"41341e2277422","name":"xyz","key_y":"000566b8-1f52-5b38c","marked_for_removal":false,"max_capacity":3831609642556,"total_capacity":0,"total_reserved_capacity":0}'

或者这个:

^{pr2}$

我想按以下方式打印:

u'<<200:
{"id":"12345",
"key_x":"41341e2277422",
"name":"xyz",
"key_y":"000566b8-1f52-5b38c",
"marked_for_removal":false,
"max_capacity":3831609642556,
"total_capacity":0,
"total_reserved_capacity":0}'

也就是说,中间的json应该被格式化,字符串可以保持原样。在

我试过把数据转换成字符串并打印出来,但那没用。在

import pprint
pprint.pprint(data.encode('utf-8'), width=1)

Tags: 数据keynameidfalsefor字典max
1条回答
网友
1楼 · 发布于 2024-06-08 07:22:24

response属于str类型-包含HTTP状态代码和实际的JSON数据结构。在

import json
import pprint

# response is coming from requests, most likely Content-Type: text/plain 
# separate the status code '200' from the actual JSON data
status = response[:6]
data   = response[6:]

if '200' not in status:
   # Bail out, got an error
   exit(0)

parsed = json.loads(data.encode('utf-8'))

# Print output
print status
# Using pprint
pprint.pprint(parsed)

相关问题 更多 >

    热门问题