インライン数式モードで \input{} を使用する -- 追加の `}`

インライン数式モードで \input{} を使用する -- 追加の `}`

私は特定の値を生成し、それを Python の単一の .tex ファイル ( example.tex) に出力します。ほとんどの場合、形式\SI{<value>}{\percent}または表形式環境の単一行として出力します& \SI{<value>}{\percent} & \SI{<value>}{\percent} & \SI{<value>}{\percent}

\input{example.tex}ただし、この値を通常のテキストaligntabular環境に問題なく簡単に含めることができます。ただし、これをテーブルキャプションの数式モード ( $$、、 ) 内で使用すると、ログ ファイルに\[\]は入力の場所に\ensuremath「...an extra }」が生成されます。

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。代わりに使用してください。

しかし、そもそもなぜこのようなデータを含めるのでしょうか?

関連情報