python希腊字母大小写的转换_python – 标识符归一化:为什么微信转换成希腊字母mu?...

这里有两个不同的角色。一个是

MICRO SIGN,这是键盘上的一个,另一个是

GREEK SMALL LETTER MU。

要了解发生了什么,我们应该看看Python如何在language reference中定义标识符:

identifier ::= xid_start xid_continue*

id_start ::=

id_continue ::=

xid_start ::=

xid_continue ::=

我们的两个字符MICRO SIGN和GREEK SMALL LETTER MU都是Ll unicode组(小写字母)的一部分,因此它们都可以在标识符中的任何位置使用。现在请注意,标识符的定义实际上是指xid_start和xid_continue,并且它们被定义为相应的非x定义中的所有字符,其中NFKC归一化导致标识符的有效字符序列。

Python显然只关心标准化的标准化形式。这被确认了一下:

All identifiers are converted into the normal form NFKC while parsing; comparison of identifiers is based on NFKC.

NFKC是一个Unicode normalization,它将字符分解成各个部分。 MICRO SIGN分解为GREEK SMALL LETTER MU,这正是在那里发生的。

还有很多其他角色也受到这种规范化的影响。另一个例子是OHM SIGN,它分解为GREEK CAPITAL LETTER OMEGA.使用它作为标识符给出了类似的结果,这里使用本地显示:

>>>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值