LaTeX 文档中的 Python 代码

LaTeX 文档中的 Python 代码

我想将一些 Python 代码包含到 LaTex 文档中,因此我使用以下代码“导入”了 listings 包

\usepackage{listings}

\lstdefinelanguage{Python}{
 keywords={typeof, null, catch, switch, in, int, str, float, self},
 keywordstyle=\color{ForestGreen}\bfseries,
 ndkeywords={boolean, throw, import},
 ndkeywords={return, class, if ,elif, endif, while, do, else, True, False , catch, def},
 ndkeywordstyle=\color{BrickRed}\bfseries,
 identifierstyle=\color{black},
 sensitive=false,
 comment=[l]{#},
 morecomment=[s]{/*}{*/},
 commentstyle=\color{purple}\ttfamily,
 stringstyle=\color{red}\ttfamily,
}

编译时,我得到:

 Illegal parameter number in definition oof \lstlang@python$ }

我用谷歌搜索过,但我不知道如何解决这个问题。它说的是命令或类似的东西。

答案1

在您发布的 LaTeX 源中,出现以下错误:

comment=[l]{#},

将其更改为:

comment=[l]{\#},

它可以帮我编译。

答案2

我在参考指南listings 包文档

4.1 如何阅读参考文献

...

关于参数,请记住以下几点:

...

5.如果您想输入特殊字符 {}#%\,这个角色必须使用反斜杠进行转义。这意味着您必须为单个字符“右括号”编写 } — 但当然不必为结束参数字符编写 }。

在下面的部分中还有一条注释

4.18 语言定义

...

... 笔记:如果你想进入\{}#或者&作为以下关键字的参数(的一部分),您必须在前面加上反斜杠!

相关内容