初學者在這裏!提前原諒我提出可能是一個非常簡單的問題。請幫我優化我的Python代碼
我一直在試圖放在一起,在指定的純文本文件上運行多個查找和替換操作和一些類似的東西的Python腳本。它工作,但從編程的角度來看,我懷疑它運作良好。我如何最好地去優化對'outtext'變量所做的操作?目前,它基本上是做一個非常類似的事情了四倍...
import binascii
import re
import struct
import sys
infile = sys.argv[1]
charenc = sys.argv[2]
outFile=infile+'.tex'
findreplace = [
('TERM1', 'TERM2'),
('TERM3', 'TERM4'),
('TERM5', 'TERM6'),
]
inF = open(infile,'rb')
s=unicode(inF.read(),charenc)
inF.close()
# THIS IS VERY MESSY.
for couple in findreplace:
outtext=s.replace(couple[0],couple[1])
s=outtext
for couple in findreplace:
outtext=re.compile('Title: (.*)', re.I).sub(r'\\title'+ r'{\1}', s)
s=outtext
for couple in findreplace:
outtext=re.compile('Author: (.*)', re.I).sub(r'\\author'+ r'{\1}', s)
s=outtext
for couple in findreplace:
outtext=re.compile('Date: (.*)', re.I).sub(r'\\date'+ r'{\1}', s)
s=outtext
# END MESSY SECTION.
outF = open(outFile,'wb')
outF.write(outtext.encode('utf-8'))
outF.close()
謝謝大家的幫助!我已經把它切好了! – 2010-06-14 12:48:26
[Python查找替換腳本中的正則表達式可能重複?更新](http://stackoverflow.com/questions/3036706/regular-expressions-in-a-python-find-and-replace-script-update) – SilentGhost 2010-06-14 13:31:47
@SilentGhost,我認爲這是一個後續問題,而不是重複。 – 2010-06-14 19:44:28