zB. Nehmen wir an, wir haben eine Python-Datei namens songbook-makeindex.py, die eine Eingabe mit der Dateierweiterung .xsd erfordert und eine Ausgabe mit der Dateierweiterung .sbx liefert, die innerhalb der Latex-Datei ausgeführt werden muss.
\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}
Antwort1
Es könnte eine einzelne Datei für alles sein? Ich meine LaTeX-Code plus Python-Code plus Python-Ausgabe, alles gemischt in einer Datei mit der .Rnw
Erweiterung.
Wenn ja, müssen Sie es .tex
mit R
und konvertieren knitr
und dann die LaTeX-Datei wie gewohnt kompilieren oder besser noch mampfen und den gesamten Vorgang Rstudio überlassen.
Beispiel:
% 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}
Antwort2
Ich denke, das sollte mit dem sagetex
Paket möglich sein; die Dokumentation dazu ist verfügbarHierauf CTAN. Das Paket ermöglicht es Ihnen, ein Computeralgebrasystem namens Sage auszuführen. Dies bedeutet, dass Sage lokal auf Ihrem Computer installiert werden muss oder, noch einfacher, Sie können eine kostenloseKokalKonto, früher bekannt als SagemathCloud. Das sagetex
Paket ist eine einfache Möglichkeit, die Leistungsfähigkeit von Python sowie die gesamte integrierte Mathematik von Sage zu nutzen. Ich habe eine Python-Datei auf Cocal hochgeladen, die den Anfang der Recaman-Folge berechnet. Der Code selbst ist nicht wichtig, wichtig ist, dass die Ergebnisse der Programmausführung in einem String namens enthalten sind output
. Der sagesilent
Block ermöglicht die Ausführung von Sage-Code, zeigt aber nichts im LaTeX-Code an. In diesem Fall habe ich einfach das Python-Programm geladen und ausgeführt. Im Hauptteil des LaTeX-Dokuments weist der Befehl \sagestr Sage an, die String-Ausgabe zu erfassen und in das Dokument einzufügen. Berechnungen können mit dem Befehl \sage durchgeführt werden. Sie können diese Site nach sagetex durchsuchen, um mehr über seine Verwendung zu erfahren. Beachten Sie, dass das Bild unten zeigt, dass sich das Python-Dokument und das LaTeX-Dokument im selben Verzeichnis befinden.
\documentclass{article}
\usepackage{sagetex}
\begin{document}
\begin{sagesilent}
load("Recaman.py")
python Recaman.py
\end{sagesilent}
Result printed:\\
\sagestr{output}
\end{document}
Ich weiß nichts über Ihre anderen Erweiterungen, aber die Python-Datei wurde eindeutig importiert, ausgeführt und die Ausgabe in ein LaTeX-Dokument integriert. Die Dokumentation für Sage istHier. Auf der oben verlinkten Cocal-Website heißt es:
„CoCalc ist ein ausgereifter Webdienst für Online-Berechnungen: Mathematische Berechnungen: SageMath, SymPy, Maxima; Statistische Analyse: R-Projekt, Pandas, Statsmodels, Scikit-Learn, Tensorflow, NLTK; Verschiedene andere Berechnungen: Octave, Julia usw.“ Es gibt also viele Möglichkeiten.