这是在 LaTeX 代码中使用 lua 变量的最佳或最简单的方法吗?

这是在 LaTeX 代码中使用 lua 变量的最佳或最简单的方法吗?
\documentclass{article}
\usepackage{luacode}

\begin{document}

\begin{luacode}

for i = 1,10
do
    a = math.random(0,10) ;
    tex.print("--")
    tex.print("$\\sqrt{"..a.."}$") % <- simplest?
end
\end{luacode}

\end{document}

答案1

请注意,发布的代码会产生错误,因为luacode逐字读取其内容

 % <- simpliest ?

传递给 Lua 并产生语法错误。

但我认为你不需要在这里。你可以直接在 的扩展中luacode调用。math.random\sqrt

然后我通常会在外面使用一个 TeX 循环,但在这里我使用另一个循环\directlua来访问 Lua 循环。

在此处输入图片描述

\documentclass{article}

\begin{document}


\def\x{--$\sqrt{\directlua{tex.sprint(math.random(0,10))}}$}

\directlua{for i=1,10 do tex.print("\string\\x") end}

\end{document}

相关内容