python? 要修改文件內容,常用 是先read,后write , 再 rename,很不爽。
比如:需要 把?????? yuv_dir ="../HD/"?? # "H:/HD_Master/1080i25/"
??????????????? 改為?????? yuv_dir ="C:/HD/"?? # "H:/HD_Master/1080i25/"
很簡單,但實際不好操作,因為read后文件指針就到后一行了,要使用seek到前一行等,很不好。
很多應用多需要處理文件,而處理文件有一個固定的模式:打開文件,讀入一些數據,處理這些數據,打印到屏幕上或寫入另一個文件。
那么,如果我們想修改之后立即寫回文件,該怎么做呢?用什么模式打開?又怎么讀寫?
我個人嘗試了很多中方法,不是無法實現,就是操作非常麻煩。最終放棄。
幸運的是,Python內置模塊fileinput就可以輕松完成。代碼如下:
for line? in fileinput.input("case_1_gaoqing.py",inplace=1):
?? ?line = line.replace("..","C:")????
?? ?print line,
這樣就實現了需要的目的,很簡單吧。?? ?line = line.replace("..","C:")????
?? ?print line,
關于更多fileinput的資料,在這里http://docs.python.org/library/fileinput.html