擅长:python、mysql、java
<p>不是所有的终端都能处理超过8位的字符集,这是真的。但不管你做什么他们都不会处理的,真的。在</p>
<p>如果您的操作系统正确设置了终端,那么打印Unicode字符串将产生可能的最佳结果,这意味着终端无法打印的字符将被替换为某些字符,例如问号或类似字符。你自己翻译并不能真正改善事情。在</p>
<p>更新:</p>
<p>因为您想知道字符串中有哪些字符,所以实际上需要知道它们的Unicode代码,或者在本例中是XML的等价物。这比打印更容易检查,而且通常b''部分本身就不是问题。在</p>
<p>但你可以像这样轻松地摆脱它:</p>
<pre><code>print(repr(s.encode('ascii', errors='xmlcharrefreplace'))[2:-1])
</code></pre>