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 に答える