yohhoyの日記

技術的メモをしていきたい日記

名前によるUnicodeリテラル表現

PythonではUnicodeコードポイントによるリテラル表現*1の他に、Unicode文字データベース(UCD; Unicode Character Database)*2に準じた名前表現もサポートする。

print("\U0001F4DB")      # 📛
print("\N{NAME BADGE}")  # 📛

print("\N{TOFU ON FIRE}")
# SyntaxError:
#   (unicode error) 'unicodeescape' codec can't decode bytes in position 0-15:
#   unknown Unicode character name

関連URL

*1:¥uXXXXUCS-2) または ¥UXXXXXXXX(UCS-4)

*2:https://www.unicode.org/reports/tr44/