Можно ли импортировать файл Python в latex?

Можно ли импортировать файл Python в latex?

Например, предположим, у нас есть файл Python songbook-makeindex.py, который требует ввода в виде расширения файла .xsd и выдает вывод в виде расширения файла .sbx, который необходимо запустить внутри файла latex.

\documentclass{article}

{here some required packages}

\begin{document}

songbook-makeindex.py english_auth.sxd > english_auth.sbx

songbook-makeindex.py english_title.sxd > english_title.sbx

\end{document}

решение1

Это может быть один файл для всего? Я имею в виду код LaTeX плюс код Python плюс вывод Python, все смешанное в одном файле с .Rnwрасширением.

Если это так, вам необходимо преобразовать его в .texwith Rи knitrзатем скомпилировать файл LaTeX как обычно, или лучше munch better, предоставив Rstudio позаботиться обо всем процессе.

Пример:

мве

% For .tex output use:  
% Rscript -e "library(knitr); knit('filename.Rnw')" 
\documentclass[a5paper]{article}
\setlength\parindent{0pt}
\begin{document}

This is not just verbatim text, but  executable python code:
<<test1, echo=T, eval=FALSE, engine='python'>>=
x = 'hello, python world!'
print(x)
print(x.split(' '))
@

And this the phython ouput of the above code from \textsc{this} file: 
<<test2, echo=F, comment="", engine='python'>>=
<<test1>>
@

All inside only a \LaTeX\ (R noweb) file.   

\end{document}

решение2

Я думаю, что это возможно с помощью sagetexпакета; его документация доступна.здесьна CTAN. Пакет позволяет вам запустить систему компьютерной алгебры Sage. Это означает, что Sage должен быть установлен локально на вашем компьютере или, что еще проще, вы можете получить бесплатнуюКокалаккаунт, ранее известный как SagemathCloud. Пакет sagetex— это простой способ получить мощь Python и всю встроенную математику Sage. Я загрузил файл Python в Cocal, который вычисляет начало последовательности Recaman. Сам код не важен, важно то, что результаты запуска программы содержались в строке с именем output. sagesilentБлок позволяет запускать код Sage, но он ничего не показывает в коде LaTeX. В этом случае я просто загрузил программу Python и запустил ее. В теле документа LaTeX команда \sagestr сообщает Sage о необходимости захватить вывод строки и поместить ее в документ. Вычисления можно выполнить с помощью команды \sage. Вы можете выполнить поиск по этому сайту по слову sagetex, чтобы узнать больше о его использовании. Обратите внимание, что на рисунке ниже показано, что документ Python и документ LaTeX находятся в одном каталоге.

\documentclass{article}
\usepackage{sagetex}
\begin{document}
\begin{sagesilent}
load("Recaman.py")
python Recaman.py
\end{sagesilent}
Result printed:\\
\sagestr{output}
\end{document}

Результат: введите описание изображения здесь

Я ничего не знаю о других ваших расширениях, но очевидно, что файл Python был импортирован, запущен, и вывод был включен в документ LaTeX. Документация для Sage естьздесьНа сайте Cocal, ссылка на который приведена выше, говорится:

«CoCalc — это сложный веб-сервис для онлайн-вычислений: математические вычисления: SageMath, SymPy, Maxima; статистический анализ: R project, Pandas, statsmodels, scikit-learn, Tensorflow, NLTK; различные другие вычисления: Octave, Julia и т. д.», так что возможностей много.

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