python3 文件和流

流:

打开文件:

open(filemode='r'buffering=-1encoding=Noneerrors=Nonenewline=Noneclosefd=Trueopener=None),打开一个文件并返回相应的对象;

file:文件名;

mode:打开模式,默认只读;

buffering:设置缓冲;

encoding:设置编码;

errors:报错级别;

newline:区分换行符;

closefd:传入的file参数类型;

opener:

mode参数:

  r:读取模式(默认);

  w:写入模式;文件存在从头开始写入,不存在则创建后写入;

  x:新建一个文件写入,存在则异常

  a:附加写入,不存在则创建后写入;

  b:二进制模式;

  t:文本模式;

  +:打开一个文件进行更新(与其他模式结合使用);

  r+:打开文件进行读写,读数据时从头开始读,写入时从最后开始写;

  w+:打开文件进行读写,光标在开头,文件有内容则删除;

  a+:打开文件进行读写,光标在结尾,从最后继续追加;

常用方法:fo=open('filename')

  fo.close():关闭文件,对文件操作完必须要关闭打开的文件;

  fo.flush():刷新文件内部缓冲,将内部缓冲区数据立刻写入文件;

  fo.fileno():返回一个非0整型的文件描述符;

  next(fo):返回文件下一行;

  fo.read([size]):读取指定的字节数,英文与中文都是一个字节,不指定或为负则返回全部,游标跟随移动;

  fo.readline([size]):读取整行包括\n,如果指定则返回字节数,游标跟随移动;

  fo.readlines():读取所有行包括\n,返回一个以每行为元素组成的列表,此时数据会全部加载入内存;

  fo.seek(offset[,whence]):方法用于移动文件读取指针到指定位置,offset偏移量,whence偏移的起始位置,0开头、1当前、2末尾;

  fo.tell():返回当前的位置数;英文占一个字节,utf-8中文占三个字节;

  fo.wirte(str):将字符串写入文件,文件关闭刷新之后,字符串才真正被写入;

  fo.wirtelines([str]):向文件中写入一序列的字符串,换行需要制定换行符,["hello\n","world"];

  fo.truncate([size]):从文件首字符开始截取指定的字符数,后面的字符会被删除,无参数则从当前位置开始;

  fo.isatty():检测文件是否连接到一个终端设备,是返回True;

上一篇:iOS多线程编程技术之NSThread、Cocoa NSOperation、GCD


下一篇:C++ Builder多线程编程技术经验谈(转)