📜  如何在Python中打印上标和下标?

📅  最后修改于: 2022-05-13 01:54:59.551000             🧑  作者: Mango

如何在Python中打印上标和下标?

每当我们使用公式时,可能需要以给定的格式编写给定的公式,这可能需要下标或上标。有多种方法可用于在Python中打印下标和上标。我们将在下面讨论其中两个——

使用 maketrans() 和 translate() :

我们可以制作两个字符串,一个用于普通字符,另一个用于下标/上标字符。之后,我们可以使用maketrans()方法返回一个映射,该映射可以与translate()方法一起使用来替换指定的字符。它可以实现为上标

Python3
# function to convert to superscript
def get_super(x):
    normal = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-=()"
    super_s = "ᴬᴮᶜᴰᴱᶠᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾQᴿˢᵀᵁⱽᵂˣʸᶻᵃᵇᶜᵈᵉᶠᵍʰᶦʲᵏˡᵐⁿᵒᵖ۹ʳˢᵗᵘᵛʷˣʸᶻ⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾"
    res = x.maketrans(''.join(normal), ''.join(super_s))
    return x.translate(res)
  
# display superscipt
print(get_super('GeeksforGeeks')) #ᴳᵉᵉᵏˢᶠᵒʳᴳᵉᵉᵏˢ


Python3
# function to convert to subscript
def get_sub(x):
    normal = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-=()"
    sub_s = "ₐ₈CDₑբGₕᵢⱼₖₗₘₙₒₚQᵣₛₜᵤᵥwₓᵧZₐ♭꜀ᑯₑբ₉ₕᵢⱼₖₗₘₙₒₚ૧ᵣₛₜᵤᵥwₓᵧ₂₀₁₂₃₄₅₆₇₈₉₊₋₌₍₎"
    res = x.maketrans(''.join(normal), ''.join(sub_s))
    return x.translate(res)
  
# display subscript
print('H{}SO{}'.format(get_sub('2'),get_sub('4'))) #H₂SO₄


Python3
# subscript
print(u'H\u2082SO\u2084')  # H₂SO₄
  
# superscript
print("x\u00b2 + y\u00b2 = 2")  # x² + y² = 2


输出:

ᴳᵉᵉᵏˢᶠᵒʳᴳᵉᵉᵏˢ

对于下标,我们可以将其实现为

蟒蛇3

# function to convert to subscript
def get_sub(x):
    normal = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-=()"
    sub_s = "ₐ₈CDₑբGₕᵢⱼₖₗₘₙₒₚQᵣₛₜᵤᵥwₓᵧZₐ♭꜀ᑯₑբ₉ₕᵢⱼₖₗₘₙₒₚ૧ᵣₛₜᵤᵥwₓᵧ₂₀₁₂₃₄₅₆₇₈₉₊₋₌₍₎"
    res = x.maketrans(''.join(normal), ''.join(sub_s))
    return x.translate(res)
  
# display subscript
print('H{}SO{}'.format(get_sub('2'),get_sub('4'))) #H₂SO₄

输出:

H₂SO₄

使用 Unicode 下标和上标:

下表给出了 Unicode字符的下标和上标:

 0123456789ABCDEF
U+207x  
U+208x₌  
U+209x   

在 Unicode字符的帮助下,我们可以在我们的代码中实现它:

蟒蛇3

# subscript
print(u'H\u2082SO\u2084')  # H₂SO₄
  
# superscript
print("x\u00b2 + y\u00b2 = 2")  # x² + y² = 2

输出:

H₂SO₄
x² + y² = 2