有没有办法从 Python 编写格式化文本?

Posted

技术标签:

【中文标题】有没有办法从 Python 编写格式化文本?【英文标题】:Is there a way to write formatted text from Python? 【发布时间】:2013-04-16 05:39:51 【问题描述】:

如果您正在使用 python 写入文件,有没有办法使文本的某些部分变为粗体、斜体或下划线?

我试过了:

test = '/location/tester.rtf'
out_file = open(test,'w')
out_file.write('is this \bold?')
out_file.close() #thanks to the comment below

是否可以通过 python 编写 FORMATTED TEXT,如粗体、斜体或带下划线的文本?我觉得 .rtf 是最基本的格式化文本,但如果我错了,请纠正我

【问题讨论】:

1) 在标题中提出真正的问题:“如何用 Python 编写 RTF 文件?” (或任何所需的格式;例如 DOC、DOCX、Open Office 使用的任何格式等)和 2) 包括错误症状(通常包括错误消息)。 你必须out_file.close()才能再次打开它。 【参考方案1】:

刚刚玩弄了这个假设的 MS 字,我发现您需要将文档包装在“”中并定义文档类型,然后以“\b”开始粗体并以“\b0”结束。一个例子是

test = 'tester.rtf'
out_file = open(test,'w')
out_file.write("""\\rtf1
This is \\b Bold  \\b0\line\
""")
out_file.close() #thanks to the comment below

注意双 '\' 因为 python 对 '\b' 和 '\r' 有特殊含义。

完整信息来自http://www.pindari.com/rtf1.html,其中还描述了斜体、字体等。

如果这对你有用,请告诉我。

【讨论】:

Hi max K。很好的答案,如果我们希望变量写入 out_file.write 怎么办。

以上是关于有没有办法从 Python 编写格式化文本?的主要内容,如果未能解决你的问题,请参考以下文章

从Google电子表格中解析格式化文本

在 Google Apps 脚本中用 HTML 替换文本

当我将富文本格式的字符串从 Python 写入文件时,我可以重新格式化它们吗?

有没有办法使用 Python 将 bigquery 返回的结果转换为 Json 格式?

从 Notepad++ 复制带有颜色的文本

python,自己编写的第一个工作应用程序,实现对文本文件的计算并格式化另存为另一个文件