[本文出自天外归云的博客园]
当你用python调用grpc接口的时候,返回的protobuf数据中如果含有中文,会显示成编码模式,类似“\345\214\227\344\272\254”,如何显示成中文呢?这里有两种办法:
# 方法一:对 grpc 接口返回的包含中文编码的整体内容进行处理 def first_method(self, req): response = self.client.DoSomeRPCRequest(req) from google.protobuf.json_format import MessageToJson j = MessageToJson(response) a = json.loads(j) print(a) def convert_string_to_bytes(string): import struct bytes = b"" for i in string: bytes += struct.pack("B", ord(i)) return bytes # 方法二:对某个包含中文编码的字符串进行处理 def sec_method(): a = "\345\214\227\344\272\254" b = convert_string_to_bytes(a) print(b.decode())
你学会了吗?