繁体   English   中英

UnicodeDecodeError:“ ascii”编解码器无法解码字节0xe3

[英]UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3

UnicodeDecodeError:“ ascii”编解码器无法解码字节0xe3

我在py 2.7中为该行运行邮件脚本时遇到了这个问题...

msg.attach(MIMEText(welcome_msg + htmlMessageContent + footer_msg,'html'))

您要连接的字符串的元素之一

welcome_msg + htmlMessageContent + footer_msg

是Unicode,而另一个不是。 当您连接字符串时,Python会将它们全部转换为通用类型(Unicode),这与将整数添加到浮点数中的方式很相似。 但是,默认的字符串转换为Unicode是ascii,如果该字符串包含非ascii字符,它将失败。

找出哪个字符串不是Unicode。 为此,您可以使用type() 将该字符串包装到对unicode()的调用中,该调用解释了如何解释'\\xe3' 例如,如果'\\xe3'应解释为'ã'

unicode(mystring, encoding='Latin-1')

然后,您的串联应该起作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM