美文网首页
文件和输入输出

文件和输入输出

作者: 无愠无殇 | 来源:发表于2016-04-08 20:45 被阅读34次

    文件对象

    • 普通的磁盘文件
    • 类文件:ex.打开一个网页URL

    文件内建函数

    • open(file_name,access_mode='r',buffering=-1)
    buffering 用于指示访问文件采用的缓冲方式,0表示不缓冲,1表示缓冲
    一行数据,大于1表示使用给定值作为缓冲区大小,不提供或为负值代表使
    用系统默认缓冲机制
    
    • file() 与open()功能一致,可以替换,但建议使用open()

    通用换行符支持UNS
    行分隔符:(\r) | (\n) |(\r\n)
    路径分隔符:/---\---:---


    文件内建方法

    • read() 读取给定参数字节的数目,默认直至末尾
    • readline() 读取一行,包括行结束符
    • readlines() 读取所有(剩余)行然后把它们作为字符串列表返回

    • write()
    • writelines() 接受一个字符串列表作为参数,行操作符不会自动加入,需要手动加入行结束符

    • seek() 默认位置为0,代表开头,1,代表当前位置,2,代表文件末尾

    • close()
    • flush() 把内部缓冲区的内容立刻写入文件,暂时不会用(在open函数中有个参数buffering ,可以写到缓冲区)
    • fileno()
    • truncate() 将文件截取到当前文件指针位置或者给定size,以字节为单位
    • tell() 返回文件位置指针的坐标

    文件内建属性

    • file.closed
    • file.encoding
    • file.mode
    • file.name
    • file.newlines 未读取到行分隔符时为None,只有一种行分隔符时为一个字符串,当文件有多种类型的行结束符时,则为一个包含素有当前所遇到的行结束符的列表

    标准文件???暂时不理解干什么用的

    -pass-

    命令行参数

    • sys.argv 命令行参数列表

    文件系统

    表 9.5 os 模块的文件/目录访问函数
    --------------------------------------------
    文件处理
    mkfifo()/mknod()创建命名管道/创建文件系统节点
    remove()/unlink() Delete file 删除文件
    rename()/renames()重命名文件
    *stat() 返回文件信息
    symlink() 创建符号链接
    utime()  更新时间戳
    tmpfile() 创建并打开('w+b')一个新的临时文件
    walk()生成一个目录树下的所有文件名
    ------------------------------------
    目录/文件夹
    chdir()/fchdir()改变当前工作目录/通过一个文件描述符改变当前工作目录
    chroot()改变当前进程的根目录
    listdir()  列出指定目录的文件
    getcwd()/getcwdu()返回当前工作目录/功能相同, 但返回一个 Unicode 对象
    mkdir()/makedirs() 创建目录/创建多层目录
    rmdir()/removedirs() 删除目录/删除多层目录
    --------------------------------------
    访问/权限
    access() 检验权限模式
    chmod() 改变权限模式
    chown()/lchown() 改变 owner 和 group ID/功能相同, 但不会跟踪链接
    umask() 设置默认权限模式
    -----------------------------------------
    文件描述符操作
    open() 底层的操作系统 open (对于文件, 使用标准的内建 open() 函数)
    read()/write() 根据文件描述符读取/写入数据
    dup()/dup2()  复制文件描述符号/功能相同, 但是是复制到另一个文件描述符
    ----------------------------------------
    设备号
    makedev()从 major 和 minor 设备号创建一个原始设备号
    major()/minor() 从原始设备号获得 major/minor 设备号
    
    表 9.6 os.path 模块中的路径名访问函数
    -----------------------------------------
    分隔
    basename() 去掉目录路径, 返回文件名
    dirname()  去掉文件名, 返回目录路径
    join() 将分离的各部分组合成一个路径名
    split() 返回 (dirname(), basename()) 元组
    splitdrive()  返回 (drivename, pathname) 元组
    splitext() 返回 (filename, extension) 元组
    -----------------------------------------
    信息
    getatime()  返回最近访问时间
    getctime()  返回文件创建时间
    getmtime()  返回最近文件修改时间
    getsize() 返回文件大小(以字节为单位)
    -----------------------------------------
    查询
    exists() 指定路径(文件或目录)是否存在
    isabs() 指定路径是否为绝对路径
    isdir() 指定路径是否存在且为一个目录
    isfile() 指定路径是否存在且为一个文件
    islink() 指定路径是否存在且为一个符号链接
    ismount()  指定路径是否存在且为一个挂载点
    samefile() 两个路径名是否指向同个文件
    

    永久存储模块 ???不理解、等填坑

    --pass--

    相关文章

      网友评论

          本文标题:文件和输入输出

          本文链接:https://www.haomeiwen.com/subject/qlsvlttx.html