参考链接: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类型: