我遇到了一些urwid
tutorial,其中包含一个代码示例如下:
...
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会隐藏像这样的其他任何惊喜吗?
答案 0 :(得分:11)
接近https://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals的结尾:
\ N {name} - Unicode数据库中名为 name 的字符