【问题标题】:How do I evaluate a fraction (substituting in variable values) in a Jupyter Notebook?如何评估 Jupyter Notebook 中的分数(代入变量值)?
【发布时间】:2019-01-29 23:59:42
【问题描述】:

我在 Jupyter 中使用 python markdown package,但在 markdown 单元格中使用变量时,我找不到内联评估变量的方法。

例如,我的代码单元格将包含:

a = 1
b = 2

而我使用 python markdown 的 markdown 单元格应该是:

$\frac{{{a}}{{{b}}$

生产

有没有办法评估“a”和“b”,以便我可以将它们放入 LaTeX 降价单元格?我想使用 Jupyter 笔记本来逐步计算报告,因此在将笔记本写入 pdf 或 .tex 文件的过程中,我可以用变量值替换这一点至关重要。

我探索了pylatex,但这似乎也没有使用分数的数学示例(仅适用于矩阵和向量的类)。

【问题讨论】:

    标签: python jupyter-notebook latex jupyter


    【解决方案1】:

    您需要this 分机号。

    Python Markdown 扩展允许在 markdown 单元格中显示当前内核生成的输出。这些扩展基本上与内核语言无关,但是大多数测试都是使用 Python 完成的。

    例如:如果你在 Python 中设置变量 a

    a = 1.23

    并在降价单元格中写入以下行:

    a is {{a}}

    会显示为:

    a is 1.23

    【讨论】:

    • 我在我的问题中链接到该扩展。虽然它适用于某些 LaTeX 函数,但它不适用于分数,因为它们涉及大括号。运行该单元会产生以下结果:imgur.com/B4lmA5x
    【解决方案2】:

    如您所知,python markdown 扩展的计算结果为 {{a}} 变量 a 并打印出来。问题是括号内的值实际上被评估为python表达式!既然$\frac{{{a}}{{{b}}$不行,那怎么样:

    {{r'$\frac{'+str(a)+'}{'+str(b)+'}$'}}
    

    这应该评估为python字符串r'$\frac{1}{2}$',这是您想要编写的降价内容(实际上是乳胶:P)

    没那么好,但话又说回来,如果你经常使用它,你可以在前一个单元格中为此(或其他任何东西)创建一个 python 辅助函数并调用它:

    def frac(a, b):
        return r'$\frac{'+str(a)+'}{'+str(b)+'}$'
    

    然后

    This is markdown showing the fraction of {{a}} and {{b}}: {{frac(a, b)}}
    

    【讨论】:

      猜你喜欢
      • 2018-07-29
      • 1970-01-01
      • 2017-02-18
      • 2014-07-23
      • 1970-01-01
      • 1970-01-01
      • 2019-08-28
      • 2015-12-21
      • 1970-01-01
      相关资源
      最近更新 更多