from: http://developer.51cto.com/art/201003/187960.htm
from: http://www.cnpythoner.com/post/69.html
Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,以下的文章会给你详细的介绍相关内容,会你在以后的学习的过程中有所帮助,下面我们就详细介绍其应用程序。
一、打开文件
Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,以下的文章会给你详细的介绍相关内容,会你在以后的学习的过程中有所帮助,下面我们就详细介绍其应用程序。
代码如下:
f = open("d:\test.txt", "w")
说明:
第一个参数是文件名称,包括路径;第二个参数是打开的模式mode
'r':只读(缺省。如果文件不存在,则抛出错误)
'w':只写(如果文件不存在,则自动创建文件)
'a':附加到文件末尾
'r+':读写
如果需要以二进制方式打开文件,需要在mode后面加上字符"b",比如"rb""wb"等
二、读取内容
f.read(size)
参数size表示读取的数量,可以省略。如果省略size参数,则表示读取文件所有内容。
f.readline()
读取文件一行的内容
f.readlines()
读取所有的行到数组里面[line1,line2,...lineN]。在避免将所有文件内容加载到内存中,这种方法常常使用,便于提高效率。
三、写入文件
f.write(string)
将一个字符串写入文件,如果写入结束,必须在字符串后面加上"\n",然后f.close()关闭文件
四、文件中的内容定位
f.read()
读取之后,文件指针到达文件的末尾,如果再来一次f.read()将会发现读取的是空内容,如果想再次读取全部内容,必须将定位指针移动到文件开始:
f.seek(0)
这个函数的格式如下(单位是bytes):
f.seek(offset, from_what)
from_what表示开始读取的位置,offset表示从from_what再移动一定量的距离,比如f.seek(10, 3)表示定位到第三个字符并再后移10个字符。from_what值为0时表示文件的开始,它也可以省略,缺省是0即文件开头。下面给出一
f = open('/tmp/workfile', 'r+')
f.write('0123456789abcdef')
f.seek(5) # Go to the 6th byte in the file
f.read(1)
'5'
f.seek (-3, 2) # Go to the 3rd byte before the end
f.read(1)
'd'
五、关闭文件释放资源
文件操作完毕,一定要记得关闭文件f.close(),可以释放资源供其他程序使用
_________________________________________________________________________
python文件操作非常的方便,它有很多的方法来使的文件操作非常的简单,下面简单的说下python怎么操作文件的。
打开文件:
可以用open方法和file方法。
后面有个参数来区别操作文件的方式,比如a,r,w
读文件:
read方法和readlines方法,
read()方法把整个文件的内容放到字符串里
readlines()方法则把文件的内容按照行为单位放到列表里。
一般要替换文件里的某个字符的话,最好有readline,然后用循环把一行一行内容循环出来,再查找替换
这样效率比整个读到一个字符串里来查找匹配效果更高。
下面举个例子:
比如你要把文件里的aa字符串,替换成bb字符串的话,
import re
check = re.compile(r'aa')
f = file('1.txt','r')
content = f.read()
c = re.sub(check,'bb',content)
c就是替换好的数据,不过这样效率比较低。
另外一个效率比较高的方法
import re
check = re.compile(r'aa')
info = []
for i in file:
c = re.sub(check,'bb',i)
info.append(c)
c = ''.join(info)
写文件:
write方法和writeline()方法
关闭文件:
close()方法,最好我们要养成一个好习惯,在操作完一个文件以后,记得要调用这个方法来关闭文件。
文件的其它操作方法我就不介绍了,可以支持查手册或者用help(文件对象)来查看学习。
上面的替换字符串的例子也可以用python列表解析的方法来读取文件,你可以自己练习下,最近写了一篇[python 下载文件] 的文章,呵呵!