《Modern Python Cookbook》(Python经典实例)笔记 1.10 使用键盘上没有的Unicode字符
程序员文章站
2022-07-02 22:51:22
案例背景:Python默认支持Unicode。可用的独立Unicode字符有几百万个,这些字符中绝大多数我们使用键盘无法直接输入。很多计算机中的字体可能在设计时就没有考虑提供这些字符,特别是Windows计算机中的字体可能无法显示这些Unicode字符。Linux和Mac OS X几乎没有关于Unicode字符的问题。在本案例中,我们将讨论如何表示这些特别的Unicode字符。原理:Python使用转义序列(escape sequence)扩展普通字符。通过转义序列我们可以输入海量的 Unicod...
案例背景:
Python默认支持Unicode。可用的独立Unicode字符有几百万个,这些字符中绝大多数我们使用键盘无法直接输入。
很多计算机中的字体可能在设计时就没有考虑提供这些字符,特别是Windows计算机中的字体可能无法显示这些Unicode字符。Linux和Mac OS X几乎没有关于Unicode字符的问题。
在本案例中,我们将讨论如何表示这些特别的Unicode字符。
原理:
Python使用转义序列(escape sequence)扩展普通字符。通过转义序列我们可以输入海量的 Unicode字符。转义序列以\开始,下一个字符说明Unicode字符如何表示。
常见的表示方法有两大类:
- 根据编码进行转义:编码总是以十六进制形式出现,例如U+2680。可以使用
\unnnn
格式将编码填充为4位数如果编码超过4位数,可以使用\Unnnnnnnn
格式将编码扩展为8位数。 - 根据名称进行转义:
\N{name}
,name为编码的名称。
案例:
In [1]: '\u0048\u0045\u004c\u004c\u004f'
Out[1]: 'HELLO'
In [2]: '\N{DIE FACE-1}'
Out[2]: '⚀'
In [3]: '\u2680'
Out[3]: '⚀'
In [4]: '\U00002680'
Out[4]: '⚀'
In [5]: '\U0000FFE6'
Out[5]: '₩'
本文地址:https://blog.csdn.net/mighty13/article/details/110457123