我从这里获得了以下大部分代码:Generating pdf-latex with python script
#!/usr/bin/env python
from __future__ import division
from functions import *
import shlex
#from Utilities import *
import os
import argparse
import subprocess
equation = '\begin{equation*}1 + \gamma\lambda B/2\end{equation*}'
content=r'''\documentclass{article}
\usepackage{graphicx,amsmath}
\begin{document}
\noindent\rotatebox{180}{\vbox{%
%(equation)s
}%
}
\end{document}
'''
parser=argparse.ArgumentParser()
parser.add_argument('-e', '--equation', default=equation)
args=parser.parse_args()
content%args.__dict__
print content%args.__dict__
运行此代码会出现以下错误:
Traceback (most recent call last):
File "latex.py", line 29, in <module>
content%args.__dict__
ValueError: unsupported format character '
' (0xa) at index 104
有谁知道出了什么问题?我从其他旋转页面的方法中得到了同样的错误。
答案 0 :(得分:17)
%
中的任何 content
都被视为格式化占位符。将任何非占位符加倍:
content=r'''\documentclass{article}
\usepackage{graphicx,amsmath}
\begin{document}
\noindent\rotatebox{180}{\vbox{%%
%(equation)s
}%%
}
\end{document}
'''
否则,%
行末尾的\noindent\rotatebox{180}{\vbox{%
与\n
换行符一起被视为格式化字符,因此嵌入换行符例外。