首页 > 编程语言 > 详细

Python - 文件操作

时间:2020-03-16 17:22:31      阅读:60      评论:0      收藏:0      [点我收藏+]

文件操作

  1. 定义

    数据流的输入输出/内存中数据交换的操作

    • IO密集型程序:在程序执行中有大量IO操作,而cpu运算较少。消耗cpu较少,耗时长。
    • 计算密集型程序:程序运行中计算较多,IO操作相对较少。cpu消耗多,执行速度快,几乎没有阻塞
  2. 字符串字节串转换

    • 字符串转换为字节串方法:str.encode()
    • 字节串转换为字符串方法:bytes.decode()
  3. 模式

    w+ 打开文件并读写 1. 文件存在,则清空(也即写入空); 2. 文件不存在,则创建文件 ; 3. 文件流定位到开始位置, 所以read() 会得到空。

    r+ 打开文件并读写 1. 文件存在,打开文件,文件指针定位到文件开始位置; 2. 文件不存在, 则报错文件不存在。

    a+ 打开文件并读添 1. 文件存在,打开文件,文件指针定位到文件开始位置,但不清空;2. 文件不存在,创建文件; 3. 打开后读取时,在文件开头位置,4. 写入时,添加到文章末尾,并且指针位于添加后的末尾,所以再次读取会乱码。

  4. 操作

    1 读
    >read([size])
    返回所有内容,文件过大时候不建议直接读取到文件结尾,读到文件结尾会返回空字符串。
    >readline([size])
    返回读取到的内容,游标所以在一行
    >readlines([sizeint])
    返回读取到的内容列表
    2 写
    >write(string)
    返回值:写入的字符个数,如果需要换行要自己在写入内容中添加\n
    >writelines(str_list)
    字符串列表作为参数
    3 打开
    file = open()
    with open as file
    4 关闭
    file.close
  5. 缓冲

    • 系统在内存中为每一个正在使用的文件开辟一个缓冲区

    • 写入:内存--内存缓冲区--磁盘中去

      读取:磁盘--内存缓冲区--程序数据区。

    • 刷新缓冲区条件:

      • 缓冲区被写满
      • 程序执行结束或者文件对象被关闭
      • 行缓冲+换行
      • 程序中调用flush()函数
  6. 文件偏移量

    读写共用一个偏移量

    tell():获取文件偏移量

    seek(offset[,whence]):移动偏移量
    参数:offset 代表相对于某个位置移动的字节数。负数表示向前移动,正数表示向后移动。
    whence是基准位置的默认值为 0,代表从文件开头算起,1代表从当前位置算起,2 代表从文件末尾算起。

    • 必须以二进制方式打开文件时基准位置才能是1或者2
  7. 文件描述符

    fileno()

  8. 文件操作函数

    1. 获取文件大小 os.path.getsize(file)

    2. 查看文件列表 os.listdir(dir)

    3. 查看文件是否存在os.path.exists(file)

    4. 判断文件类型os.path.isfile(file)

    5. 删除文件os.remove(file)

Python - 文件操作

原文:https://www.cnblogs.com/yangjunh/p/python-files.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!