0

所以我在 python 中编写了一个脚本,将渲染日志转储到文本文件中,然后通过电子邮件将其发送给消息正文中的用户。

我正在使用像这样读取的python:

f=open('filename.txt','r')
f.read()

f文件实例在哪里。我得到的输出不是很用户可读。

'# \'// 警告:渲染视图:所选区域太小 // \r\ndefaultPointLight(1, 1,1,1, 0, 0, 0,0,0, 1);\r\nrenderWindowRender redoPreviousRender renderView ;\r\n

当我更愿意让它显示时

// 警告:渲染视图:所选区域太小 //

defaultPointLight(1, 1,1,1, 0, 0, 0,0,0, 1);

renderWindowRender redoPreviousRender renderView;

有没有一种简单的方法可以将 \r 和 \n 转换为电子邮件中的换行符?

4

2 回答 2

0

作为一种非常快速和肮脏的方式,您可以使用 .replace(r'\r\n', '\n'),例如:

>>> print '# \'// Warning: Render view: Selected region is too small // \r\ndefaultPointLight(1, 1,1,1, 0, 0, 0,0,0, 1);\r\nrenderWindowRender redoPreviousRender renderView;\r\n'.replace(r'\r\n', '\n')
# '// Warning: Render view: Selected region is too small // 
defaultPointLight(1, 1,1,1, 0, 0, 0,0,0, 1);
renderWindowRender redoPreviousRender renderView;

r'\r\n' 中的 "r" 表示,字符串应该从字面上理解,与 '\n' 相反,后者是实际的换行符。

(其实我不知道你平台的换行符是什么。相应地更改'\n')

于 2012-01-07T08:23:23.607 回答
0

首先,您需要以 HTML 格式发送电子邮件。通过这样做,您可以使用各种 HTML 标记对其进行格式化。<br/>然后只需用标签替换中断字符。

log.replace('\n','<br/>').replace('\n\r','<br/>')

是一个很好的支持 html 的邮件代码。

于 2012-01-12T22:13:11.350 回答