Did you always want to transform Python code into readable LaTeX output? **latexify_py** is the perfect way to do that!

## Installation 💻

In order to install **latexify_py**, you type in the following command into your terminal.

`!pip install latexify-py`

Do not do this inside your **Jupyter Notebook**. Do the following:

```
# Install a pip package in the current Jupyter kernel
import sys
!{sys.executable} -m pip install latexify-py
```

## Examples 👇

Before running your Python cells, make sure the following modules are activated.

```
import math
import latexify
```

Let's start with the first example.

```
@latexify.with_latex
def solve(a, b, c):
return (-b + math.sqrt(b**2 - 4*a*c)) / (2*a)
```

We can now check the output of the function and print some statements.

```
print(solve(1, 4, 3))
print(solve)
```

The output would be:

If you call

`solve`

it will output the code in LaTeX format.

```
@latexify.with_latex
def greek(alpha, beta, gamma, Omega):
return alpha * beta + math.gamma(gamma) + Omega
greek
```

You can run the code yourself using the Colab Notebook below.

## Alternative Render Methods 🖼

There are some commands inside Jupyter that output LaTeX code %%latex cell magic just interprets the input in the cell as LaTeX code, it does not run any Python code.

Jupyter Notebook support the display of mathematical expressions typeset in LaTeX, which is rendered in the browser thanks to the** MathJax library **and is rendered inside HTML / Markdown.

Just put your LaTeX math inside dollar signs $ $ or enter in * display* math mode by writing inside double dollar signs.

```
from IPython.display import Math
Math(r'F(k) = \int_{-\infty}^{\infty} f(x) e^{2\pi i k} dx')
```

Or you can enter latex directly with the *%%latex* command.

```
%%latex
\begin{align}
\nabla \times \vec{\mathbf{B}} -\, \frac1c\, \frac{\partial\vec{\mathbf{E}}}{\partial t} & = \frac{4\pi}{c}\vec{\mathbf{j}} \\
\nabla \cdot \vec{\mathbf{E}} & = 4 \pi \rho \\
\nabla \times \vec{\mathbf{E}}\, +\, \frac1c\, \frac{\partial\vec{\mathbf{B}}}{\partial t} & = \vec{\mathbf{0}} \\
\nabla \cdot \vec{\mathbf{B}} & = 0
\end{align}
```

If this post was helpful to you, consider subscribing to receive the latest blogs, tutorials and **course** updates! 🙂

And if you would love to see other blog posts or tutorials on AI, please leave a comment under this post - cheers!

Keep engineering your mind! ❤️

Jousef