在内联数学模式中使用 \input{} -- 额外的 `}`

在内联数学模式中使用 \input{} -- 额外的 `}`

我生成某些值并将它们打印在 python 中的单个 .tex 文件(example.tex)中,大多数以表格环境的形式\SI{<value>}{\percent}或单行形式打印& \SI{<value>}{\percent} & \SI{<value>}{\percent} & \SI{<value>}{\percent}

但是,我可以轻松地\input{example.tex}将此值包含在普通文本align或环境中,而不会遇到任何问题。但是在表格标题的数学模式( 、、 )tabular中使用它时,日志文件会在输入位置产生“...一个额外的”。$$\[\]\ensuremath}

Pdflatex 编译并且显示值,但是由于警告是错误,我想问一下:

1) Is the use of `\input{}` for this purpose generally recommended?
2) How to get rid of the error/what did I do wrong?

在 MWE 之下,test_size.tex纯粹由 组成\SI{30}{\percent}

\documentclass{article}

\usepackage{siunitx}
\usepackage{amsmath}


\begin{document}
    Normal inline mode works: \input{./values/test_size.tex}\\[1ex]
    Normal math inline mode works: $\input{./values/test_size.tex}$
    \begin{table}
        \caption{Math inline caption doesnt work: $\input{./values/test_size.tex}$}
    \end{table}
    \begin{align}
        \textrm{align enviroment works: } \input{./values/test_size.tex}
    \end{align}
\end{document}

编辑:也会有帮助。抱歉重复发帖。

答案1

\input是濒危物种,需要保护,\protect\input替代使用。

但是,你为什么首先要包含这样的数据呢?

相关内容