【原创】python修改文件某行的内容
来源:互联网 发布:卖衣服的淘宝店 编辑:程序博客网 时间:2024/05/30 19:33
1 # -*-coding:utf-8 -*-
2
3
4 # @version: 1.0
5 # @author: Zhipeng Zhang
6 # @date: '2015/5/28'
7 import os
8
9 import fileinput
10
11
12 def rewrite_line(filename, lineno, text, left=True,right=False):
13 f= fileinput.input(filename, inplace=1)
14 for linein f:
15 line_text= line.replace("\r\n","").replace("\n", "")
16 if f.lineno()== lineno:
17 if left:
18 print text+ line_text
19 elif right:
20 print line_text+ text
21 else:
22 print text
23 else:
24 print line_text
25 f.close()
26
27 def cat(filename):
28 with file(filename)as f:
29 print f.read()
30 os.remove(filename)
31 with file(filename,"w")as f:
32 f.write("a\nb\nc")
33
34 def test():
35 filename= "rewrite.test"
36 with file(filename,"w")as f:
37 f.write("a\nb\nc")
38
39 print "newfile:" + filename
40 print "filecontent: a\nb\nc"
41
42 print "--------starttest---------"
43
44 print filename,"line:", 2, "left add # --> #b?"
45 rewrite_line(filename,2, "#", left=True)
46 cat(filename)
47
48
49 print filename,"line:", 2, "right add #END --> b#END?"
50 rewrite_line(filename,2, "#END", left=False,right=True)
51 cat(filename)
52
53 print filename,"line:", 1, " rewrite a --> zhipeng?"
54 rewrite_line(filename,1, "zhipeng", left=False,right=False)
55