参考链接:https://www.cnblogs.com/mlgjb/p/7899534.html
执行如下代码报错:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0: ordinal not in range(128)
if int(self.triage_request["type"]) in [MALICIOUS_DOMAIN]:
logger.info(self.processname)
logger.info(self.signername)
if self.signername:
signername = '有正常签名的'
infer = "推测是人为操作触发的,"
else:
signername = ''
infer = ''
self.data["conclusion"]["description"] = self.data["conclusion"]["description"].format(
devices=self.build_host_name(self.first_target.values()[0]),signername=signername, processname=self.processname,domain_clue=self.triage_request["data"][0]["domain"],infer=infer)
else:
self.data["conclusion"]["description"] = self.data["conclusion_common"]["description"].format(
devices=self.build_host_name(self.first_target.values()[0]))
提示中的“ordinal not in range(128)”,意思是字符不在128范围内,即说明不是普通的ASCII字符,超出处理能力。想到将原始字符串转化为unicode
signername =u '有正常签名的'
infer = u"推测是人为操作触发的,"
参照下图可以理解下python中str类型与types类型:

本文详细解析了在处理非ASCII字符时遇到的UnicodeDecodeError异常,通过实例代码展示了如何将字符串转换为unicode以解决该问题。
3182

被折叠的 条评论
为什么被折叠?



