如何在Jupyter Notebook中评估分数(代入变量值)?

时间:2019-01-29 23:59:43

标签: python jupyter-notebook latex jupyter

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

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

a = 1
b = 2

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

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

生产

enter image description here

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

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

2 个答案:

答案 0 :(得分:2)

您将需要this扩展名。

  

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

     

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

     

a = 1.23

     

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

     

a is {{a}}

     

它将显示为:

     

a is 1.23

答案 1 :(得分:0)

您知道,python markdown扩展的结果为{{a}}变量a并打印出来。问题是括号内的值实际上是作为python表达式求值的!由于$\frac{{{a}}{{{b}}$不起作用,该怎么办:

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

这应该计算为python字符串r'$\frac{1}{2}$',这是您想要编写的markdown内容(实际上是latex:P)

不太好,但是再说一次,如果您经常使用它,则可以在上一个单元格中为此(或其他任何真正的)对象创建一个python helper函数并调用它:

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

然后

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