欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

《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