我创建了一个Latex模板,并希望使用字符串占位符来生成表单。
templateB = open('C:/Users/ustjo/Desktop/MM/HSF/HSF-Forms-Generation/template/form-b.tex', 'r').read()
templateB
“\的DocumentClass [11磅] {书} \ n \ n \输入{preamble.tex} \ n \ n \ {开始文档} \ n \ n \ n表单 B \ n \ n \ section {香港国际机场扩建至 三跑道系统} \ n \ n海洋旅行路线和管理计划 SkyPier的高速渡轮\ n \ n \ subsection {\ ul {Case Audit and 检查 记录}} \ n \ n {\ renewcommand {\ arraystretch} {1.4} \ n \开始{表} [HTB] \ n上\字号{11磅} {15pt} \ selectfont \ n \开始{片状} {|> {\ raggedright} p {38毫米} | \ {NP99毫米}< {\ raggedright} |} \ HLINE \ n %%% \ n参考 计划:&海上旅游路线和高速管理计划 SkyPier渡轮(计划)(EP条件2.10)\ n \\ \ hline \ n监控数据:&收集的渡口运动数据 期 之间\ n \换行符\ n \ UL {%(期间)S} \ n \\ [1.0毫米] \ HLINE \ nInformation 和数据检查: & \ n \ begin {minipage} [t] {110mm} \ n \ begin {itemize} \ n \ item自动 识别系统(AIS)\ n \ item数据每日SkyPier HSF移动\ n \ item潜在偏差记录\ n \ item提供的响应 渡船 运营商\ n \ {端逐项} \ VSPACE * { - 1.5ex} \ n \ {端} minipage \ n \\\ HLINE \ nCase 不:& \ textit {%(案例号)s} \ n \\ \ hline \ n日期:& \ textit {%(Date)s} \ n \\ \ hline \ nFerry Details:&渡轮号码: %(Ferry No)s \ n \ newline平均速度:%(Avg Speed)s knots \ newline 瞬时速度范围:%(最小速度)s - %(最大速度)s knots \ newline瞬时超速持续时间:%(持续时间)s \ n \\ \ hline \ n评论和观察\来自ET的新线:& %(评论)类 \\ \ hline \ n评论和观察\来自IEC Marine的新行 顾问:& \ n \\ \ hline \ nReason(s)有效\\根据\\ The 计划? & \ n \ begin {minipage} [t] {95mm} \ n \ begin {itemize} \ n \ item是 (案件结束)\ n \ item [\ nocheck]否(与东道主MCDD确认的ET 所需的后续行动 动作)\ n \ {端逐项} \ VSPACE * { - 1.5ex} \ n \ {端} minipage \ n \\\ HLINE \ n \ {端片状} \ n \ {端表} \ N} \ n \ ñ\ N {\字号{10PT} {12磅} \ selectfont \ n \开始{片状} {:L {23毫米}:L {35毫米}:L {35毫米}:L {35毫米}:} \ n \ hdashline \ n \张口[14pt] {}&安培; \ makecell [l] {ET Leader / \\ [2mm] \ nET的代表} & \ n \ makecell [l] {IEC / \\ [2mm] \ nIEC的代表} & \ n \ makecell [l] {PM / \\ [2mm] \ nPM的代表} \\ \ hline \ nSignature& \ includegraphics [scale = 1.0] {sig1.pdf} \ n& &安培; \\ \ hdashline \ nName& Terence Kong& &安培; \ n \张口[10PT] {} \ n \\\ hdashline \ n \ {端片状} \ N} \ n \ n \ n \ {端文档} \ n“个
当我尝试运行模板时,使用循环
page = templateB%{'Period':formB.iloc[i,8],'Case No':formB.iloc[i,1], 'Date':formB.iloc[i,2],
'Ferry No':formB.iloc[i,3], 'Avg Speed':formB.iloc[i,4],'Min Speed':formB.iloc[i,5],
'Max Speed':formB.iloc[i,6], 'Duration':formB.iloc[i,7], 'Comments':formB.iloc[i,9]}
返回
ValueError Traceback (most recent call last)
<ipython-input-7-afe0b30f82bd> in <module>()
2 page = templateB%{'Period':formB.iloc[i,8],'Case No':formB.iloc[i,1], 'Date':formB.iloc[i,2],
3 'Ferry No':formB.iloc[i,3], 'Avg Speed':formB.iloc[i,4],'Min Speed':formB.iloc[i,5],
----> 4 'Max Speed':formB.iloc[i,6], 'Duration':formB.iloc[i,7], 'Comments':formB.iloc[i,9]}
5
6 file_name_tex = str(formB.iloc[i,0]) + '.tex'
ValueError: unsupported format character '?' (0xa) at index 448
我只有一个'?'在乳胶中。我试图删除'?'。问题依然存在。
有人可以帮忙吗?
答案 0 :(得分:1)
转义不属于替换格式说明符的文字%
字符。有些发生在第21行:
%%%
使用另一个%
字符转义每个%
,因此该行将为:
%%%%%%
您必须对文档中的所有文字%
字符执行此操作。