繁体   English   中英

Python中的“\\ N {SPECIAL CHARACTER}”来自哪里?

[英]Where does “\N{SPECIAL CHARACTER}” in Python come from?

我遇到了一些urwid 教程 ,其中包含一个代码示例如下:

...
main = urwid.Padding(menu(u'Pythons', choices), left=2, right=2)
top = urwid.Overlay(main, urwid.SolidFill(u'\N{MEDIUM SHADE}'),
    align='center', width=('relative', 60),
    valign='middle', height=('relative', 60),
    min_width=20, min_height=9)
urwid.MainLoop(top, palette=[('reversed', 'standout', '')]).run()

那个u'\\N{MEDIUM SHADE}'字符串文字让我疯了几乎整整一天,直到我发现它被包括在内 - 作为评论! - 在/usr/lib/python3.5/encodings/下的文件中......但我没有找到任何关于使用这种表示法的提示。 我浏览了Python文档,却什么都找不到。

出于好奇,我在我的python解释器中运行:

print(u'\N{LOWER ONE QUARTER BLOCK}')

我得到了

那种黑魔法来自哪里? 我的意思是,在哪里解释一个人可以使用...符号(?)使用他们友好的名字打印出特殊字符? Python会隐藏像这样的其他惊喜吗?

接近https://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals

\\ N {name} - Unicode数据库中名为name的字符

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM