Переменные Python недоступны в pyconsole (PythonTeX)

Переменные Python недоступны в pyconsole (PythonTeX)

Этот MWE не требует пояснений:

% Compile this with pdflatex -> pythontex.py -> pdflatex
\documentclass[a6paper]{article}

\usepackage{pythontex}
\usepackage{geometry}

\begin{document}

\pyb{pi=3.14159}

$\pi$ is \py{pi}

\begin{pyconsole}
pi
\end{pyconsole}

\end{document}

изображение

решение1

Команды \pyи \pybвыполняются через скрипт Python. pyconsoleСреда выполняется в эмуляции консоли. Поэтому между ними нет перекрытия, и переменные не являются общими. (Обычные команды/среды Python всегда начинаются с py, в то время как все, что связано с консолью, начинается с pycon.)

Вероятно, вам стоит взглянуть на команды \pyconи \pyconc. Первая используется для получения значения переменной, а вторая позволяет вам запускать консольный код, ничего не показывая. В настоящее время нет \pyconb. Я считаю, что показ кода без вывода не похож на консоль. Но я могу рассмотреть возможность добавления такой команды в будущем.

Связанный контент