文件IO

2019-06-17  本文已影响0人  四阿哥萌萌哒

python文件打开方法

open(name,[,mode[buf]])

文件读取

read([size]) size为字节数

readline([size]) size为字节数

readlines([size])读取缓存buff近似大小的文件

iter()迭代器 f=open(name) iter_f=iter(f)

文件写

写缓存机制,flush()or close()手动同步,内存溢出自动同步

write(str)

writeline(sequenc of str)

Linux 系统进程级文件描述符限制

f.fileno 文件描述符属性

ulimit -n 获取文件描述符上限

ulimit -n your_need 修改文件描述符上限

文件属性

    fileno

    mode

    encoding

    closed

codecs 模块打开文件

codecs.open(fname,mode,enconding=noen,errors="strict",buffer=1)

os模块处理文件

os.open(ffilename,flag,mode)

flag:打开文件方式

    OS.OCREAT:创建文件.

    oS.O_RDONLY:只读方式打开

    os.O_WRONLY:只写方式打开

    oS.O_RDWR:读写方式打开

    os.read(fd,buffsize)

    os.write(fd,string)

    os.lseek(fd,pos,how)

    os.close(fd)

文件指针

    f.tell()返回当前文件偏移

    f.seek(var,position) 偏移量和相对位置

        os.SEEK_SET 0

        os.SEEK_CUR 1

        os.SEEK_END 2

os.path方法|说明

    exists(path)当前路径是否存在

    isdir(s)是否是一个目录

    isfile(path)是否是一个文件

    getsize(filename)返回文件大小

    dirname(p)返回路径的目录

    basename(p)返回路径的文件名

os方法说明

    access(path,mode) 判断该文件权限:F_OK存在,R_OK,W_OK,X_OK

    listdir(path)返回当前目录下所有文件组成的列表

    remove(path)删除文件

    rename(old,new)修改文件或者目录名

    mkdir(path[,mode])创建目录

    makedirs(path[,mode])创建多级目录

    removedirs(path)删除多级目录

    rmdir(path)删除目录(目录必须容目录)

ConfigParser

    构造对象cfg=ConfigParser.ConfigParser()

    加载文件cfg.read(fname)

    返回节列表cfg.sections()

    导出节内容cfg.items(section)

    插入修改节点cfg.set(section,key,value)

    删除条目/节点cfg.remove_option,cfg.remove_section

json

    dump - 将Python对象按照JSON格式序列化到文件中

    dumps - 将Python对象处理成JSON格式的字符串

    load - 将文件中的JSON数据反序列化成对象

    loads - 将字符串的内容反序列化成Python对象

CSV

    CSV (Comma Separated Values),即逗号分隔值(也称字符分隔值,因为分隔符可以不是逗号),是一种常用的文本格式,用以存储表格数据,包括数字或者字符

    reader(csvfile, dialect='excel', **fmtparams)

    csvfile,必须是支持迭代(Iterator)的对象,可以是文件(file)对象或者列表(list)对象,如果是文件对象,打开时需要加"b"标志参数。

    dialect,编码风格,默认为excel的风格,也就是用逗号(,)分隔,dialect方式也支持自定义,通过调用register_dialect方法来注册,下文会提到。

    fmtparam,格式化参数,用来覆盖之前dialect对象指定的编码风格。

    writer(csvfile, dialect='excel', **fmtparams)

上一篇下一篇

猜你喜欢

热点阅读