python对文件进行读写操作

先看原理,再动手写程序:

python进行文件读写的函数是open或file

file_handler = open(filename,,mode)

Table mode

模式

描述

r

以读方式打开文件,可读取文件信息。

w

以写方式打开文件,可向文件写入信息。如文件存在,则清空该文件,再写入新内容

a

以追加模式打开文件(即一打开文件,文件指针自动移到文件末尾),如果文件不存在则创建

r+

以读写方式打开文件,可对文件进行读和写操作。

w+

消除文件内容,然后以读写方式打开文件。

a+

以读写方式打开文件,并把文件指针移到文件尾。

b

以二进制模式打开文件,而不是以文本模式。该模式只对WindowsDos有效,类Unix的文件是用二进制模式进行操作的。

 


 

Table 文件对象方法

方法

描述

f.close()

关闭文件,记住用open()打开文件后一定要记得关闭它,否则会占用系统的可打开文件句柄数。

f.fileno()

获得文件描述符,是一个数字

f.flush()

刷新输出缓存

f.isatty()

如果文件是一个交互终端,则返回True,否则返回False

f.read([count])

读出文件,如果有count,则读出count个字节。

f.readline()

读出一行信息。

f.readlines()

读出所有行,也就是读出整个文件的信息。

f.seek(offset[,where])

把文件指针移动到相对于whereoffset位置。where0表示文件开始处,这是默认值 1表示当前位置;2表示文件结尾。

f.tell()

获得文件指针位置。

f.truncate([size])

截取文件,使文件的大小为size

f.write(string)

string字符串写入文件。

f.writelines(list)

list中的字符串一行一行地写入文件,是连续写入文件,没有换行。


 

例子如下:

读文件
 


  1. read = open(result)  
  2.        line=read.readline()  
  3.        while line:  
  4.              print line  
  5.              line=read.readline()#如果没有这行会造成死循环  
  6.        read.close 

 写文件
 


  1. read = file(result,'a+')  
  2.         read.write("\r\n")  
  3.         read.write("thank you")  
  4.         read.close 

其它
 


  1. #-*- encoding:UTF-8 -*-  
  2. filehandler = open('c:\\111.txt','r')    #以读方式打开文件,rb为二进制方式(如图片或可执行文件等)  
  3.  
  4. print 'read() function:'              #读取整个文件  
  5. print filehandler.read()  
  6.  
  7. print 'readline() function:'          #返回文件头,读取一行  
  8. filehandler.seek(0)  
  9. print filehandler.readline()  
  10.  
  11. print 'readlines() function:'         #返回文件头,返回所有行的列表  
  12. filehandler.seek(0)  
  13. print filehandler.readlines()  
  14.  
  15. print 'list all lines'                #返回文件头,显示所有行  
  16. filehandler.seek(0)  
  17. textlist = filehandler.readlines()  
  18. for line in textlist:  
  19.     print line,  
  20. print   
  21. print 
  22.  
  23. print 'seek(15) function'               #移位到第15个字符,从16个字符开始显示余下内容  
  24. filehandler.seek(15)  
  25. print 'tell() function' 
  26. print filehandler.tell()              #显示当前位置  
  27. print filehandler.read()  
  28.  
  29. filehandler.close()                   #关闭文件句柄 

上一篇:重建二叉树


下一篇:23种设计模式-抽象工厂模式