使用f字符串输出LaTeX符号



请耐心等待,因为我不太理解f字符串的可能和不可能的用法。

取代码:

pi = 3.14159265
print(f'pi on 2 decimals is: {pi:.2f}')

明显输出:pi on 2 decimals is: 3.14

是否可以同时使用print和f字符串指令,输出以下内容:𝜋 on 2 decimals is: 3.14,带有通常的pi符号(而不是2个字母"pi"(?

否则,什么卡住了?是f字符串的使用,还是print的使用,或者两者的混合?

您需要像一样传递unicode

pi_value = 3.14159265
pi_unicode = "u03C0"
print(f'{pi_unicode} on 2 decimals is: {pi_value:.2f}')
π on 2 decimals is: 3.14

希腊Unicode的列表可以在这里找到

注意,在Python3:中也可以使用unicode变量名

Python 3允许在变量名中使用许多unicode符号。与允许任何unicode符号表示变量(包括表情符号(的Julia或Swift不同,Python 3将变量名称限制为表示书面语言字符的unicode字符。相比之下,Python 2只能为变量名使用基本的ASCII字符集。

π = 3.14

Python不理解LaTeX标记。但你可以在源代码中写一个字面意义上的π符号:

pi = 3.14159265
print(f'π on 2 decimals is: {pi:.2f}')

输出

π on 2 decimals is: 3.14

根据Python的Zen,可能有一种方法可以做到这一点。在这种情况下,有几个。即使一种语言允许,你也需要仔细考虑给定解决方案可能让你陷入的所有相关问题

Unicode变量名

Python源代码被解释为unicode。所以这个代码有效:

import math
π = math.pi
print(f"{π=:.2f}") # outputs π=3.14

转义序列\N

根据Python关于字符串文字的文档,您可以使用N符号,它的意思是";unicode数据库中的字符名";。

这样你就可以做这样的事情:

import math
print(f"N{GREEK SMALL LETTER PI} on 2 decimals is: {math.pi:.2f}")

带名称的unicode字符的完整列表可在此处获得:https://www.unicode.org/Public/9.0.0/ucd/UnicodeData.txt。我想在某些情况下它可能更可读。

Unicode序列是它的变体——根据另一个答案

最新更新