Python File(文件) 方法整理


Posted in Python onFebruary 18, 2019

open() 方法

Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError。

注意:使用 open() 方法一定要保证关闭文件对象,即调用 close() 方法。

open() 函数常用形式是接收两个参数:文件名(file)和模式(mode)。

open(file, mode='r')

完整的语法格式为:

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

参数说明:

  • file: 必需,文件路径(相对或者绝对路径)。
  • mode: 可选,文件打开模式
  • buffering: 设置缓冲
  • encoding: 一般使用utf8
  • errors: 报错级别
  • newline: 区分换行符
  • closefd: 传入的file参数类型
  • opener:
  • mode

参数有:

模式 描述
t 文本模式 (默认)。
x 写模式,新建一个文件,如果该文件已存在则会报错。
b 二进制模式。
+ 打开一个文件进行更新(可读可写)。
U 通用换行模式(不推荐)。
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
w 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
w+ 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

默认为文本模式,如果要以二进制模式打开,加上 b 。

file 对象

file 对象使用 open 函数来创建,下表列出了 file 对象常用的函数:

序号 方法及描述
1 file.close() 关闭文件。关闭后文件不能再进行读写操作。
2 file.flush() 刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件, 而不是被动的等待输出缓冲区写入。
3 file.fileno() 返回一个整型的文件描述符(file descriptor FD 整型), 可以用在如os模块的read方法等一些底层操作上。
4 file.isatty() 如果文件连接到一个终端设备返回 True,否则返回 False。
5 file.next() 返回文件下一行。
6 file.read([size]) 从文件读取指定的字节数,如果未给定或为负则读取所有。
7 file.readline([size]) 读取整行,包括 "\n" 字符。
8 file.readlines([sizeint]) 读取所有行并返回列表,若给定sizeint>0,则是设置一次读多少字节,这是为了减轻读取压力。
9 file.seek(offset[, whence]) 设置文件当前位置
10 file.tell() 返回文件当前位置。
11 file.truncate([size]) 截取文件,截取的字节通过size指定,默认为当前文件位置。
12 file.write(str) 将字符串写入文件,返回的是写入的字符长度。
13 file.writelines(sequence) 向文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符。
Python 相关文章推荐
合并百度影音的离线数据( with python 2.3)
Aug 04 Python
Python的“二维”字典 (two-dimension dictionary)定义与实现方法
Apr 27 Python
Python 'takes exactly 1 argument (2 given)' Python error
Dec 13 Python
python itchat实现微信自动回复的示例代码
Aug 14 Python
Python OpenCV处理图像之图像像素点操作
Jul 10 Python
python对视频画框标记后保存的方法
Dec 07 Python
Python3安装Pillow与PIL的方法
Apr 03 Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
Dec 10 Python
PyQt5中多线程模块QThread使用方法的实现
Jan 31 Python
Python venv虚拟环境配置过程解析
Jul 08 Python
python help函数实例用法
Dec 06 Python
实操Python爬取觅知网素材图片示例
Nov 27 Python
Python异常处理知识点总结
Feb 18 #Python
Python os.access()用法实例
Feb 18 #Python
python使用pipeline批量读写redis的方法
Feb 18 #Python
Python变量类型知识点总结
Feb 18 #Python
Python中文编码知识点
Feb 18 #Python
对Python的多进程锁的使用方法详解
Feb 18 #Python
对python中if语句的真假判断实例详解
Feb 18 #Python
You might like
PHP Reflection API详解
2015/05/12 PHP
js验证表单大全
2006/11/25 Javascript
jquerymobile局部渲染的各种刷新方法小结
2014/03/05 Javascript
jQuery中after()方法用法实例
2014/12/25 Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
2015/09/30 Javascript
js利用正则表达式检验输入内容是否为网址
2016/07/05 Javascript
javascript中数组和字符串的方法对比
2016/07/20 Javascript
Linux使用Node.js建立访问静态网页的服务实例详解
2017/03/21 Javascript
重新理解JavaScript的六种继承方式
2017/03/24 Javascript
JavaScript正则表达式和级联效果
2017/09/14 Javascript
第一个Vue插件从封装到发布
2017/11/22 Javascript
原生js实现拖拽功能基本思路详解
2018/04/18 Javascript
详解SPA中前端路由基本原理与实现方式
2018/09/12 Javascript
Javascript通过控制类名更改样式
2019/05/24 Javascript
Vue的生命周期操作示例
2019/09/17 Javascript
原生javascript单例模式的应用实例分析
2020/02/23 Javascript
webpack3.0升级4.0的方法步骤
2020/04/02 Javascript
vue中v-model对select的绑定操作
2020/08/31 Javascript
Python中实现的RC4算法
2015/02/14 Python
python批量实现Word文件转换为PDF文件
2018/03/15 Python
Python爬虫之网页图片抓取的方法
2018/07/16 Python
python实现弹跳小球
2019/05/13 Python
使用python快速在局域网内搭建http传输文件服务的方法
2019/11/14 Python
Python字符串格式化输出代码实例
2019/11/22 Python
python基于celery实现异步任务周期任务定时任务
2019/12/30 Python
bareMinerals官网:矿物质化妆品和护肤品
2018/02/04 全球购物
Solaris操作系统的线程机制
2012/12/23 面试题
用JAVA实现一种排序,JAVA类实现序列化的方法(二种)
2014/04/23 面试题
党员承诺书格式
2014/05/21 职场文书
创先争优个人承诺书
2014/08/30 职场文书
2014年预备党员群众路线教育实践活动对照检查材料思想汇报
2014/10/02 职场文书
2014收银员工作总结范文
2014/12/16 职场文书
2015年第31个教师节致辞
2015/07/31 职场文书
蓝天保卫战收官在即 :15行业将开展环保分级评价
2019/07/19 职场文书
创业计划书之校园超市
2019/09/12 职场文书
Python OpenCV 图像平移的实现示例
2021/06/04 Python