我有以下使用 pythontex 的 MWE:
%& -shell-escape
\documentclass{article}
\usepackage{pythontex}
\newcommand{\printPython}[1]{
\py{print(r'Hello, #1')}%
\newline
}
\begin{document}
Say hello Python:
%\begin{python}%
%print r"Hello \LaTeX!"
%\end{python}%
\printPython{4}
\begin{pycode}
print(r"\centering")
print(r"\textit{A message from Python!}")
\end{pycode}
\end{document}
编译时,结果是
Say hello Python:
Hello, 4 None
A message from Python!
它是None
从哪里来的?我该如何将其删除?
答案1
\py
插入给定内容的字符串表示。在本例中,它被赋予了函数print()
,该函数返回None
。因此,你得到了打印的内容,加返回值。基本上,\py
是一种快捷方式,因此print()
无需使用。您可以直接使用\py{r'Hello, #1'}%
。
\pyc
是环境的内联等效项pycode
。它只执行代码。因此,如果您希望它在文档中插入任何内容,则需要使用print()
。