芋の独り言

当ブログへのアクセスは当ブログのプライバシーポリシーに同意したものとみなします.

メモ:ファイル出力の際の改行

Pythontexファイルを出力させようと思い,

with open("example.tex",mode="w",encoding="utf-8") as f:
    f.write("\begin{tabular}0\end{tabular}\n")

みたいなものを書いたわけですが, これだとLaTeXのエディターで読み込んだ際に \begin\endを認識してくれなかった. これは\bという特殊文字として認識してしまったがためにおきたこと. 上記の表示では\bという特殊文字として認識表示していますが, PythonのIDLEとかで書いてると色付けしてくれないから気づかないんですよね~

LaTeXのエディターで読み込んだ際に\begin\endを認識できるように

with open("example.tex",mode="w",encoding="utf-8") as f:
    f.write(r"\begin{tabular}0\end{tabular}\n")

と書いたわけですが, これだとLaTeXのエディターで読み込んだ際に改行を認識してくれなかった. 今度はraw文字列にすることで\begin\endはそのままファイル出力できましたが, 改行文字も通常の文字として(正確には'\'を特殊記号の前につく記号ではなく文字として) 出力してしまったようです.

改行も入れるのは

with open("example.tex",mode="w",encoding="utf-8") as f:
    f.write(r"\begin{tabular}0\end{tabular}")
    f.write("\n")

と,別々に出力. こうすると,\begin\endを認識,改行も認識してくれました.

単純なミスですが,気づくのに少し手間取った... スクリプトのエラーとかってこういう単純なミスをやらかしていることが 案外多いんですよね~ 誰かに相互チェックしてもらえれば, チェックできるコグニティブコンピュータがあれば, そういう単純なミスは減らせるのになぁ.