python - 动态构建一个unicode字符?
问题描述
给定此字典,如何动态输出正确的 unicode 编号:
UNICODE_CHARS = {
0: "\u2070",
1: "\u00B9",
2: "\u00B2",
3: "\u00B3",
4: "\u2074",
5: "\u2075",
6: "\u2076",
7: "\u2077",
8: "\u2078",
9: "\u2079",
}
例如:数字 177 将是:
print(f"{UNICODE_CHARS.get(1)}{UNICODE_CHARS.get(7)}{UNICODE_CHARS.get(7)}")
我将如何在循环中构造它?
for i in range(1000):
# how to print each number here with unicode? Up until 9 is easy
# eg UNICODE_CHARS.get(i), but after 9 it gets tricky, and with 2, 3, or 4 digits even harder
print(....)
解决方案
首先,您应该从 Char -> Char(而不是 int -> Char)更改映射。
然后将数字 (i) 转换为字符串,并为字符串中的每个“数字”构建映射字符列表。
然后使用 "".join 再次将列表转换为字符串
完整示例:
UNICODE_CHARS = {
"0": "\u2070",
"1": "\u00B9",
"2": "\u00B2",
"3": "\u00B3",
"4": "\u2074",
"5": "\u2075",
"6": "\u2076",
"7": "\u2077",
"8": "\u2078",
"9": "\u2079",
}
for i in [1, 9, 123, 177]:
print("".join([UNICODE_CHARS[c] for c in str(i)]))
输出:
¹
⁹
¹²³
¹⁷⁷
我已将您更改range
为列表,但范围相同。
推荐阅读
- regex - 无法找出正则表达式来匹配这些情况
- facebook - Organic Post 分享 Instagram Graph API
- rest - Sabre RevalidateItinerary:什么是 ClassOfService 代码?
- bash - MacOS终端中按文件创建日期降序对grep输出进行排序的命令是什么?
- excel - 我怎样才能避免复制/粘贴问题,该问题会巧妙地粘贴与复制的范围不同的范围?
- python - Django:有没有办法让客户端在本地渲染 Python 3 函数?
- python - 如何使用 node_def 在 Tensorflow 中复制图形操作?
- nativescript - 如何创建多色 NativeScript BarSeries 堆叠条形图
- javascript - 我正在尝试向我的反应本机应用程序添加字体,但我收到未关闭 jsx 标签的错误,但我关闭了所有标签
- azure-devops - 从 Azure DevOps 中的 dotnet pack 任务中排除项目