循环内访问列表元素的最简单方法

循环内访问列表元素的最简单方法

我想在循环内访问列表的元素。这是一个最小示例:

\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage{multicol}
\usepackage{pgffor}

\begin{document}

\def\numbers{1, 2, 3, 4}
\def\MaFFNs{0.19230259, 0.18361065, 0.18027213, 0.17801571}
\def\MaNFNs{0.49030635, 0.49140458, 0.49246621, 0.49363557}

\begin{frame}
  \frametitle{TITLE}
  Text above
  \begin{columns}[onlytextwidth]
  \foreach \number [count=\n] in \numbers
  {
    \begin{column}{0.25\textwidth}
      \centering

      Ma $\approx$ \MaFFNs{\number}

      \begin{figure}
        \centering
        \includegraphics[width=\textwidth]{../figures/porous-FFN-\number}
      \end{figure}

      Ma $\approx$ \MaNFNs{\number}

      \begin{figure}
        \centering
        \includegraphics[width=\linewidth]{../figures/porous-NFN-\number}
      \end{figure}
    \end{column}
  }
  \end{columns}
  Text below
\end{frame}

\end{document}

上述代码适用于图形,但不适用于列表中的元素。解决方案可在https://tex.stackexchange.com/a/21566对我来说不起作用(我明白! Missing = inserted for \ifnum.);事实上,在提到的解决方案中,列表的元素不会在循环内访问。

有人能帮我找出实现我想要的最佳(最简单的)方法吗?

多谢,

编辑:正如 David Carlisle 在下面指出的那样,解决方案很简单。\numbers\ids\number替换\id,解决方案为https://tex.stackexchange.com/a/21566作品。

答案1

不要将其用作\number局部变量,它是一个 tex 原语,您会得到奇怪的低级错误。

相关内容