我想创建一个Unicode代码点数组,它构成JavaScript中的空白区域(减去我分别处理的Unicode白空间代码点).这些字符包括水平制表符,垂直制表符,换页符,空格,不间断空格和BOM.我可以用魔术数字做到这一点:
whitespace = [0x9, 0xb, 0xc, 0x20, 0xa0, 0xfeff]
Run Code Online (Sandbox Code Playgroud)
这有点模糊; 名字会更好.通过的unicodedata.lookup方法ord有助于:
>>> ord(unicodedata.lookup("NO-BREAK SPACE"))
160
Run Code Online (Sandbox Code Playgroud)
但这不适用于0x9,0xb或0xc - 我认为因为它们是控制字符,而"名称"FORM FEED等只是别名.有没有办法将这些"名称"映射到标准Python中的字符或其代码点?还是我运气不好?
Ned*_*der 13
Kerrek SB的评论很好:只需将名字放在评论中即可.
顺便说一下,Python还支持一个命名的unicode文字:
>>> u"\N{NO-BREAK SPACE}"
u'\xa0'
Run Code Online (Sandbox Code Playgroud)
但它使用相同的unicode名称数据库,并且控制字符不在其中.