ValueError:不支持的格式字符'

jug*_*ler 8 python

我从这里获得了以下大部分代码:使用python脚本生成pdf-latex

#!/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__
Run Code Online (Sandbox Code Playgroud)

运行此代码会给我以下错误:

Traceback (most recent call last):
  File "latex.py", line 29, in <module>
    content%args.__dict__
ValueError: unsupported format character '
' (0xa) at index 104
Run Code Online (Sandbox Code Playgroud)

谁知道出了什么问题?我从其他旋转页面的方法中得到了同样的错误.

Mar*_*ers 17

任何 % in content都被视为格式化占位符.将任何非占位符加倍:

content=r'''\documentclass{article}
\usepackage{graphicx,amsmath}

\begin{document}
\noindent\rotatebox{180}{\vbox{%%
    %(equation)s
    }%%
}
\end{document}
'''
Run Code Online (Sandbox Code Playgroud)

否则%,该\noindent\rotatebox{180}{\vbox{%行的末尾与\n换行符一起被视为格式化字符,因此具有嵌入换行符的异常.