【问题标题】:Python dictionary with math symbols带有数学符号的 Python 字典
【发布时间】:2017-12-03 06:38:17
【问题描述】:

我想用 Python 制作一个字典,但要使用数学符号(因为我想用符号来绘制它)。

所以,我有这样的事情:

    dict_particles = {1: "Gamma", 
              2: "e+",
             -2: "e-",
              3: "mu+", 
             -3: "mu-",
              4: "pi0",
             -4: "pi+",
                  etc...}

例如,我想要希腊字母的符号,而不是名称“Gamma”。我也想给它们加上上标和下标。

有可能吗?

【问题讨论】:

  • 我不确定你遇到了什么麻烦。您只是不确定如何输入 Γ 或 γ? (也许最简单的方法就是从某个地方复制/粘贴它。)
  • 如果您使用的是 python3,那么只需将符号复制粘贴到 python 脚本中即可。
  • Sympy怎么样?
  • 我建议您将问题更新为“如何在 Python 中打印希腊字母”或“我需要做什么才能在 Python 中打印数学符号”或类似的内容,以便一个人以后搜索这些信息可以找到这些答案;问题的字典部分与您想要做的事情有些无关。

标签: python dictionary symbols


【解决方案1】:

如果你使用 matplotlib.pyplot,你可以简单地使用提到的语法here:

text = r'$\alpha > \beta$'

哪个 matplotlib.pyplot 将翻译成漂亮的希腊符号,例如

plt.title(text)

对于你的具体例子:

dict_particles = {1: r"\Gamma", 
                  2: r"\epsilon+", ...}

【讨论】:

    【解决方案2】:

    是的,您可以在 Python 代码中使用任何 Unicode 符号,甚至可以在变量名中使用(适用于 Python 3.x,对于 Python 2.6+,请查看 @a_guest's comment)。

    您还可以使用 unicode 转义 ("π" = "\u03c0")

    【讨论】:

    • 要在 Python 2 的源代码中使用非 ascii 字符,您必须手动设置编码:# -*- coding: utf-8 -*-(在源文件的顶部)。
    【解决方案3】:

    你用什么来绘制它们?如果你使用 matplotlib,你可以只写 latex:

    https://matplotlib.org/users/mathtext.html

    那么你的 dict 可能看起来像这样:

    dict_particles = {1: r"\gamma", 
                  2: r"\epsilon",
                      etc...}
    

    matplotlib 将用正确的符号替换乳胶。

    【讨论】:

      【解决方案4】:

      我从未尝试过在其他环境中是否可行,但我在去年的某个时候在 python 3.x 中使用 IDLE 实现了这一点;我使用alt codes 将希腊字母输入到我的原始代码中,所以我会说

      print("δ")
      print("φ")
      

      它们会毫无问题地打印为文字字符串。

      【讨论】:

      • 如果由于某种原因这些在您的环境中不起作用,@bakatrouble 的答案应该是通用的。
      • 在 Python 2 中,您可以通过 # -*- coding: utf-8 -*- 设置编码,然后您也可以在源代码中使用非 ascii 符号。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-06
      • 1970-01-01
      • 2020-03-10
      • 2022-07-20
      • 2015-12-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多