我找到了一些字母,但我需要找到其他字母,例如“c”、“m”、“p”,这甚至可能吗?
3 回答
查看维基百科文章Unicode subscripts and superscripts。看起来这些分布在不同的范围内,并且并非所有字符都可用。
统一用于剪切和粘贴的 Unicode 标准为数字和常见数学符号定义了完整的下标和上标(⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ⁺ ⁻ ⁼ ⁽ ⁾ ₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉ ₊ ₋ ₌ ₍ ₎ ),一个完整的上标拉丁小写字母,除了 q ( ᵃ ᵇ ᶜ ᵈ ᵉ ᶠ ᵍ ʰ ⁱ ʲ ᵏ ˡ ᵐ ⁿ ᵒ ᵖ ʳ ˢ ᵗˣ 有限大写 ᵘ ᵻ ʷ),a (ᴬᴮᴳᴴᴵᴶᴷᴸᴹᴺᴼᵁᵁᵁᵂᵂᵂ),一些订阅的小写字母(ₐₐₕᵢₗₗₘₘₙₚₚᵣₛₛₛₛₛₛ字母( ᵅ ᵝ ᵞ ᵟ ᵋ ᶿ ᶥ ᶲ ᵠ ᵡ ᵦ ᵧ ᵨ ᵩ ᵪ )。请注意,由于这些字形来自不同的范围,它们的大小和位置可能不同,具体取决于字体。
您可以从另一个答案中提到的维基百科页面复制characters
。然后在python中
characters = '⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ⁺ ⁻ ⁼ ⁽ ⁾ ₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉ ₊ ₋ ₌ ₍ ₎ ᵃ ᵇ ᶜ ᵈ ᵉ ᶠ ᵍ ʰ ⁱ ʲ ᵏ ˡ ᵐ ⁿ ᵒ ᵖ ʳ ˢ ᵗ ᵘ ᵛ ʷ ˣ ʸ ᶻ ᴬ ᴮ ᴰ ᴱ ᴳ ᴴ ᴵ ᴶ ᴷ ᴸ ᴹ ᴺ ᴼ ᴾ ᴿ ᵀ ᵁ ⱽ ᵂ ₐ ₑ ₕ ᵢ ⱼ ₖ ₗ ₘ ₙ ₒ ₚ ᵣ ₛ ₜ ᵤ ᵥ ₓ ᵅ ᵝ ᵞ ᵟ ᵋ ᶿ ᶥ ᶲ ᵠ ᵡ ᵦ ᵧ ᵨ ᵩ ᵪ'
for c in characters.split():
print(c + '=' + hex(ord(c)))
⁰=0x2070 ¹=0xb9 ²=0xb2 ³=0xb3 ⁴=0x2074 ⁵=0x2075 ⁶=0x2076 ⁷=0x2077 ⁸=0x2078 ⁹=0x2079 ⁺=0x207a ⁻=0x207b ⁼=0x207c ⁽=0x207d ⁾=0x207e
₀=0x2080 ₁=0x2081 ₂=0x2082 ₃=0x2083 ₄=0x2084 ₅=0x2085 ₆=0x2086 ₇=0x2087 ₈=0x2088 ₉=0x2089 ₊=0x208a ₋=0x208b ₌=0x208c ₍=0x208d ₎=0x208e
ᵃ= 0x1d43ᵇ= 0x1d47 = 0x1d9c = 0x1d48 = 0x1d48 = 0x1d49 = 0x1da0 = 0x1D4D = 0x1D4D = 0x2b0 = 0x2b0 = 0x2071 = 0x2071 = 0x2b2b2 = 0x2b2b2 = 0x2b2 = 0x1d4f = 0x1d4f = 030 = 04 = 0 x20 = 0 x2 = 0 x2 = 0 x2 = 0 x2 = 0 x2。 0x2b3 ˢ=0x2e2 ᵗ=0x1d57 ᵘ=0x1d58 ᵛ=0x1d5b ʷ=0x2b7 ˣ=0x2e3 ʸ=0x2b8 ᶻ=0x1dbb
ᴬ= 0x1D2C = 0x1D2E = 0x1d30ᴱ= 0x1D31 = 0x1d33 = 0x1d33 = 0x1d34 = 0x1d35 = 0x1d35 = 0x1d36 = 0x1d36 = 0x1d37 = 0x1d37 = 0x1d38 = 0x1d38 = 0x1d38 = 0x1d39 = 039 = 039 = 039 = 039 = 039 = 039 = 039 | 0x1d41 ⱽ=0x2c7d ᵂ=0x1d42
ₐ= 0x2090ₑ= 0x2091ₕ= 0x2095 = 0x1d62ⱼ= 0x2c7c = 0x2c7c = 0x2096ₗ= 0x2097 = 0x2097 = 0x2098 = 0x2098ₙ= 0x209999922092 0x2093
ᵅ=0x1d45 ᵝ=0x1d5d ᵞ=0x1d5e ᵟ=0x1d5f ᵋ=0x1d4b ᶿ=0x1dbf ᶥ=0x1da5 ᶲ=0x1db2 ᵠ=0x1d60 ᵡ=0x1d61
ᵦ=0x1d66 ᵧ=0x1d67 ᵨ=0x1d68 ᵩ=0x1d69 ᵪ=0x1d6a
import sys
# on windows run from QtConsole for unicode
# (Cmd console only support codepage characters)
# At present (6/10/2017), superscripts/subscript chars
# are best viewed with terminal/text-editor set to monospace font
# "DejaVu Sans Mono"
# "Consolas" works also, but is missing a few characters...
# and, "Courier" has the worst support at present...
if int(sys.version[0]) != 3:
print('Aborted: Python 3.x required')
sys.exit(1)
def table():
unicode_map = {
# superscript subscript
'0' : ('\u2070', '\u2080' ),
'1' : ('\u00B9', '\u2081' ),
'2' : ('\u00B2', '\u2082' ),
'3' : ('\u00B3', '\u2083' ),
'4' : ('\u2074', '\u2084' ),
'5' : ('\u2075', '\u2085' ),
'6' : ('\u2076', '\u2086' ),
'7' : ('\u2077', '\u2087' ),
'8' : ('\u2078', '\u2088' ),
'9' : ('\u2079', '\u2089' ),
'a' : ('\u1d43', '\u2090' ),
'b' : ('\u1d47', '?' ),
'c' : ('\u1d9c', '?' ),
'd' : ('\u1d48', '?' ),
'e' : ('\u1d49', '\u2091' ),
'f' : ('\u1da0', '?' ),
'g' : ('\u1d4d', '?' ),
'h' : ('\u02b0', '\u2095' ),
'i' : ('\u2071', '\u1d62' ),
'j' : ('\u02b2', '\u2c7c' ),
'k' : ('\u1d4f', '\u2096' ),
'l' : ('\u02e1', '\u2097' ),
'm' : ('\u1d50', '\u2098' ),
'n' : ('\u207f', '\u2099' ),
'o' : ('\u1d52', '\u2092' ),
'p' : ('\u1d56', '\u209a' ),
'q' : ('?', '?' ),
'r' : ('\u02b3', '\u1d63' ),
's' : ('\u02e2', '\u209b' ),
't' : ('\u1d57', '\u209c' ),
'u' : ('\u1d58', '\u1d64' ),
'v' : ('\u1d5b', '\u1d65' ),
'w' : ('\u02b7', '?' ),
'x' : ('\u02e3', '\u2093' ),
'y' : ('\u02b8', '?' ),
'z' : ('?', '?' ),
'A' : ('\u1d2c', '?' ),
'B' : ('\u1d2e', '?' ),
'C' : ('?', '?' ),
'D' : ('\u1d30', '?' ),
'E' : ('\u1d31', '?' ),
'F' : ('?', '?' ),
'G' : ('\u1d33', '?' ),
'H' : ('\u1d34', '?' ),
'I' : ('\u1d35', '?' ),
'J' : ('\u1d36', '?' ),
'K' : ('\u1d37', '?' ),
'L' : ('\u1d38', '?' ),
'M' : ('\u1d39', '?' ),
'N' : ('\u1d3a', '?' ),
'O' : ('\u1d3c', '?' ),
'P' : ('\u1d3e', '?' ),
'Q' : ('?', '?' ),
'R' : ('\u1d3f', '?' ),
'S' : ('?', '?' ),
'T' : ('\u1d40', '?' ),
'U' : ('\u1d41', '?' ),
'V' : ('\u2c7d', '?' ),
'W' : ('\u1d42', '?' ),
'X' : ('?', '?' ),
'Y' : ('?', '?' ),
'Z' : ('?', '?' ),
'+' : ('\u207A', '\u208A' ),
'-' : ('\u207B', '\u208B' ),
'=' : ('\u207C', '\u208C' ),
'(' : ('\u207D', '\u208D' ),
')' : ('\u207E', '\u208E' ),
':alpha' : ('\u1d45', '?' ),
':beta' : ('\u1d5d', '\u1d66' ),
':gamma' : ('\u1d5e', '\u1d67' ),
':delta' : ('\u1d5f', '?' ),
':epsilon' : ('\u1d4b', '?' ),
':theta' : ('\u1dbf', '?' ),
':iota' : ('\u1da5', '?' ),
':pho' : ('?', '\u1d68' ),
':phi' : ('\u1db2', '?' ),
':psi' : ('\u1d60', '\u1d69' ),
':chi' : ('\u1d61', '\u1d6a' ),
':coffee' : ('\u2615', '\u2615' )
}
keys = sorted(unicode_map.keys())
for key in keys:
spr = "X" + unicode_map[key][0]
sub = "X" + unicode_map[key][1]
if (spr == "X?"): spr = ""
if (sub == "X?"): sub = ""
print('%-15s %s %s' % (key, spr, sub))
table()