栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么unicodedata无法识别某些字符?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么unicodedata无法识别某些字符?

所述

unipredata.name()
查找依赖于第2列中的标准UnipreData.txt数据库(Python
2.7版使用Unipre 5.2.0)。

如果该名称以

<
它开头,则将被忽略。所有控制代码,包括换行符,都在该类别中。第一列除了之外 没有 其他 名称
<control>

000A;<control>;Cc;0;B;;;;;N;LINE FEED (LF);;;;

第10列是 旧的 Unipre 1.0名称,根据标准,不应使用。换句话说,除了通用数据库之外,

n
没有name
<control>
Python数据库会忽略它(因为它不是唯一的)。

Python 3.3增加了对NameAliases.txt的支持,它使您可以按别名查找名称。因此

lookup('LINEFEED')
lookup('newline')
lookup('eol')
等等,全部参考
n
。但是,该
unipredata.name()
方法不支持别名,也不支持别名(它将选择哪个?):

*添加了对Unipre名称别名和命名序列的支持。现在

unipredata.lookup()
和两者都
'N{...}'
解析名称别名,并且也
unipredata.lookup()
解析命名序列。

TL; DR:

LINE FEED
不是的正式名称
n
,而是它的别名。Python 3.3及更高版本可让您按别名查找字符。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/668176.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号