在 LaTeX 中循环遍历类似结构的数组

Looping through an array like structure in LaTeX

在python以及我熟悉的大多数其他编程语言中,我可以将值赋给类似数组的数据结构,遍历每个元素并在每次迭代时将元素传递给函数。这是一个例子:

def f(x):
  return "This is {}".format(x)

if __name__=="__main__":
  x = ['param1', 'param2', 'param3']

  for item in x:
    print(f(item))

运行 以上将打印以下内容到标准输出:

This is param1
This is param2
This is param3

这样做有几个好处:

最近一直在玩纯TeX,了解到TeX是一种面向宏的、基于扩展的语言。我能得到的最接近上述内容的是:

\def\f#1{This is #1 \par}

\f{param1}
\f{param2}
\f{param3}

\end

这是次优的,因为:

我能做些什么来将上面的 TeX 代码重构为更干的东西吗?我如何在 Plain TeX 中模拟类似结构的数组和 for each 循环?

在 Latex 中,您可以使用 pgffor 包:

\documentclass{article}

\usepackage{pgffor}

\begin{document}

\foreach \x in {param1, param2, param3}{
  This is \x\par
}

\def\foo{param1, param2, param3}
\foreach \x in \foo {
  This is \x\par
}

\end{document}