如何在Python中打印上标?

我知道python中的\ xb函数,但它似乎对我不起作用。我知道我可能需要下载第三方模块来完成此任务,如果是这样,哪个是最好的?我是Python和StackOverflow的新手,因此是我的基本问题。现在介绍一下上下文...


我目前正在编写一个二项式展开求解器,以尝试和使用我自学的技能。当我尝试显示用户输入的用于确认的扩展时,会出现问题。目前,我必须像这样打印表达式:


var1 = input("Enter a: ")

var2 = input("Enter b: ")

exponent = input("Enter n: ")


a = int(var1)

b = int(var2)

n = int(exponent)


expression = ('(%(1)dx%(2)d)^%(3)d') %\

{'1' : a, '2' : b, '3' : n}


print(expression)


confirmation = input(str("Is this correctt? Y/N "))

这将打印(2x4)^ 5,而我希望将索引打印为上标。如何才能做到这一点?如果需要,我将提供任何(缺失)信息。


慕仙森
浏览 3313回答 3
3回答

倚天杖

您可以使用sympy为您执行必要格式化的模块。它支持多种格式,例如ascii,unicode,latex,mathml等:from sympy import pretty_print as pp, latexfrom sympy.abc import a, b, nexpr = (a*b)**npp(expr) # defaultpp(expr, use_unicode=True)print(latex(expr))print(expr.evalf(subs=dict(a=2,b=4,n=5)))输出量     n(a*b)      n(a⋅b) $\left(a b\right)^{n}$32768.0000000000

函数式编程

您需要使用“格式”类型的东西。使用{}\u00b2".format(area))" and the{} becomes a²`。这是一个例子:print("The area of your rectangle is {}cm\u00b2".format(area))代码的结尾将打印出来cm²。您可以将大号2更改为其他数字以得到不同的结果。我不知道如何下标。

潇湘沐

在Python 3.6+中(仅因为示例使用了先前版本中没有的f字符串而提及),命名为Unicode字符提供了一种易于编写,易于阅读的方式来执行此操作。这是清单。例:f'\N{GREEK SMALL LETTER GAMMA}={density:.2f} t/m\N{SUPERSCRIPT THREE}'产生类似γ=1.20 t/m³
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python