如何在 python 中格式化 LaTeX 字符串?

How to format a LaTeX string in python?(如何在 python 中格式化 LaTeX 字符串?)
本文介绍了如何在 python 中格式化 LaTeX 字符串?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在编写一个应用程序,其部分功能是生成 LaTeX CV,所以我发现自己遇到了这样的字符串

I'm writing an application, part of whose functionality is to generate LaTeX CVs, so I find myself in a situation where I have strings like

egin{document}
	itle{Papers by AUTHOR}
author{}
date{}
maketitle
egin{enumerate}

%%   LIST OF PAPERS
%%   Please comment out anything between here and the
%%   first item
%%   Please send any updates or corrections to the list to
%%   XXXEMAIL???XXX

%usepackage[pdftex, ...

我想用动态信息填充,例如一个电子邮件地址.由于 LaTeX 本身的格式,带有 {email} 语法的 .format 将不起作用,也不会使用带有 %(email)s 语法的字典.特别是,像egin{document}"(LaTeX 中的命令)这样的字符串应该保持原样,而不是从 .format 中替换,并且像%%"(LaTeX 中的注释)这样的字符串也应该是左,没有从填充字典中替换.这样做的合理方法是什么?

which I would like to populate with dynamic information, e.g. an email address. Due to the format of LaTeX itself, .format with the {email} syntax won't work, and neither will using a dictionary with the %(email)s syntax. in particular, strings like "egin{document}" (a command in LaTeX) should be left literally as they are, without replacement from .format, and strings like "%%" (a comment in LaTeX) should also be left, without replacement from a populating dictionary. What's a reasonable way to do this?

推荐答案

为什么这行不通?

>>> output = r'author{{email}}'.format(email='user@example.org')
>>> print output
author{email}

编辑:使用双花括号转义"只有 LaTeX 理解的文字花括号:

edit: Use double curly braces to "escape" literal curly braces that only LaTeX understands:

>>> output = r'egin{{document}} ... author{{{email}}}'.format(
... email='user@example.org')
>>> print output
egin{document} ... author{user@example.org}

这篇关于如何在 python 中格式化 LaTeX 字符串?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)