我想打印一个变量作为上标。我做了很多研究,很多人使用Unicode的方法。这类似于print("word\u00b2"),其中2将在上标。但是,我想用变量替换2。这些是我尝试过的方法。
print("word\u00b{variable}")
print("word\u00b{}".format(variable))
print("word\u00b%s" % variable)当然还有反斜杠
print("word\u00b\{variable}")
print("word\u00b\{}".format(variable))
print("word\u00b\%s" % variable)同时,我也尝试过
variable = variable.decode(u\"u00b")上面的任何一个都不像我一直得到的那样有效。
(unicode error) 'unicodeescape' codec can't decode bytes in position 5-9: truncated \uXXXX escape我们会感谢你的帮助。
发布于 2018-09-18 06:23:42
转义代码\u00b2是一个单独的字符;您希望类似于
>>> print(eval(r'"\u00b' + str(2) + '"'))
²不那么费解,
>>> print(chr(0x00b2))
²不过,这只适用于上标2和3;其他Unicode上标符位于不同的代码块中。。
>>> for i in range(10):
... if i == 1:
... print(chr(0x00b9))
... elif 2 <= i <= 3:
... print(chr(0x00b0 + i))
... else:
... print(chr(0x2070 + i))
⁰
¹
²
³
⁴
⁵
⁶
⁷
⁸
⁹发布于 2019-10-23 19:08:26
如果您希望您的整个变量是超级瘫痪的,您必须使用%格式。如果尝试对其进行.format(),它只会标第一个字母或数字,因为它使用括号将数字分组在$$中。
我是这样写代码的:
print(r'$y=%f*x^{%f}$' % (var_A, var_B)这样您就不必调用Unicode了。我发现这种方法适用于图表标题,轴标题,图例。
我希望这能帮到你!
https://stackoverflow.com/questions/52379803
复制相似问题