擅长:python、mysql、java
<p>在<a href="https://stackoverflow.com/a/5863893/1126841">this answer</a>的帮助下:</p>
<pre><code>>>> table = dict([(x + 0xFF00 - 0x20, unichr(x)) for x in xrange(0x21, 0x7F)] + [(0x3000, unichr(0x20))])
>>> data.translate(table)
u'A Deuce'
</code></pre>
<p><code>translate</code>方法接受一个将一个Unicode代码点映射到另一个Unicode代码点的字典。在本例中,它将全角拉丁字母(本质上是向上移动到0xFF01-0xFF5E范围的ASCII字符集的一部分)映射到“普通”ASCII字符集。例如,0xFF21(全角A)映射到0x41(ASCII A),0xFF22(全角B)映射到0x42(ASCII B),等等</p>