python文件的读写

打开文件:

形式如下

f=open('/tmp/hello','w')

open(路径+文件名,读写模式),注意路径中可能含有转义字符比如"\t",要在路径名前加r

读写模式:

r只读,r+读写,w新建(会覆盖原有文件),a追加,b二进制文件.常用模式如:'rb','wb','r+b'等等,读写模式的类型有:

  • U 或 Ua 以读方式打开, 同时提供通用换行符支持 (PEP 278)
  • 以写方式打开,
  • 以追加模式打开 (从 EOF 开始, 必要时创建新文件)
  • 读写模式打开
  • 以读写模式打开 (参见 w )
  • 以读写模式打开 (参见 a )
  • 以二进制读模式打开
  • 以二进制写模式打开 (参见 w )
  • 以二进制追加模式打开 (参见 a )
  • 以二进制读写模式打开 (参见 r+ )
  • 以二进制读写模式打开 (参见 w+ )
  • 以二进制读写模式打开 (参见 a+ )

注意
1、使用'W',文件若存在,首先要清空,然后(重新)创建,
2、使用'a'模式 ,把所有要写入文件的数据都追加到文件的末尾,即使你使用了seek()指向文件的其他地方,如果文件不存在,将自动被创建。

读文件的一些方式:
  • f.read([size]) size未指定则返回整个文件,如果文件大小>2倍内存则有问题.f.read()读到文件尾时返回""(空字串),读一次,指针停留在读完之后的位置

  • file.readline() 返回一行w

  • file.readlines() 返回所有行(以字符串list的形式)

  • file.readline([size]) 返回包含size行的列表,size 未指定则返回全部行

  • for line in f: print line #通过迭代器访问

  • f.write("hello\n") #如果要写入字符串以外的数据,先将他转换为字符串.

  • f.tell() 返回一个整数,表示当前文件指针的位置(就是到文件头的比特数).

  • f.seek(偏移量,[起始位置]) 单独一行执行,用来移动文件指针 eg:f.seek(15),f(offset,whence)
    Whence=0:偏移量从文件头开始计算
    Whence=1:偏移量从当前位置开始
    Whence=2:偏移量从文件末尾开始
    偏移量:单位:比特,可正可负

  • f.writelines(lines):lines为一个list,将list中的所有元素写进文件中

你可能感兴趣的:(python文件的读写)