LaTeX 错误:输入第 54 行的 \begin{zentriert} 以 \end{document} 结尾

LaTeX 错误:输入第 54 行的 \begin{zentriert} 以 \end{document} 结尾

我对 latex 还很陌生,我正在尝试定义一个新环境,该环境使用现有环境并在开始和结束时做一些额外的事情。我所说的环境是来自 python 包的“python”环境,这样我就可以突出显示 python 代码。

我将我的环境定义如下:

\newenvironment{excall}
{\begin{python}}
{\end{python}}

并这样使用它:

\begin{excall}
print("Hello")
print("1234")
\end{excall}

但出现此错误:

! LaTeX Error: \begin{excall} on input line 54 ended by \end{document}.

center如果我尝试使用环境而不是进行相同的操作python,它会起作用。我做错了什么?

答案1

python包中的环境不是python为了展示 Python 代码,而是为了执行它

因此

\begin{python}
print("Hello")
print("1234")
\end{python}

将打印

你好 1234

如果要突出显示 Python 代码,可以使用该minted包。igor样式似乎可以选择您喜欢的颜色。

请注意,minted需要pdflatex使用该选项运行-shell-escape

在此处输入图片描述

\documentclass{article}
\usepackage{minted}

\usemintedstyle{igor}

\begin{document}

\begin{minted}{python}
print("Hello")
print("1234")
\end{minted}

\end{document}

在此处输入图片描述

minted例如,您可以自定义

\documentclass{article}
\usepackage{minted}

\usepackage{lipsum} % for context

\usemintedstyle{igor}

\newenvironment{excall}
 {\VerbatimEnvironment\subsection*{Example call}\begin{minted}{python}}
 {\end{minted}\vspace{-\medskipamount}}

\begin{document}

\lipsum[4]

\begin{excall}
print("Hello")
print("1234")
\end{excall}

\lipsum[5]

\end{document}

在此处输入图片描述

相关内容