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 相关文章推荐
使用python绘制人人网好友关系图示例
Apr 01 Python
Python进行数据提取的方法总结
Aug 22 Python
Python第三方库xlrd/xlwt的安装与读写Excel表格
Jan 21 Python
Python错误: SyntaxError: Non-ASCII character解决办法
Jun 08 Python
Caffe均值文件mean.binaryproto转mean.npy的方法
Jul 09 Python
idea创建springMVC框架和配置小文件的教程图解
Sep 18 Python
OpenCV图像颜色反转算法详解
May 13 Python
python 实现创建文件夹和创建日志文件的方法
Jul 07 Python
Django工程的分层结构详解
Jul 18 Python
django为Form生成的label标签添加class方式
May 20 Python
python模块内置属性概念及实例
Feb 18 Python
Django项目配置Memcached和Redis, 缓存选择哪个更有优势
Apr 06 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
站长助手-网站web在线管理程序 v1.0 下载
2007/05/12 PHP
PHP 创建文件(文件夹)以及目录操作代码
2010/03/04 PHP
php设计模式之命令模式的应用详解
2013/05/21 PHP
php文件夹与文件目录操作函数介绍
2013/09/09 PHP
php+mysql数据库查询实例
2015/01/21 PHP
模仿jQuery each函数的链式调用
2009/07/22 Javascript
jquery入门—选择器实现隔行变色实例代码
2013/01/04 Javascript
如何使用Jquery获取Form表单中被选中的radio值
2013/08/09 Javascript
基于jquery异步传输json数据格式实例代码
2013/11/23 Javascript
jquery动态改变onclick属性导致失效的问题解决方法
2013/12/04 Javascript
javascript定义变量时带var与不带var的区别分析
2015/01/12 Javascript
ECMAScript 5严格模式(Strict Mode)介绍
2015/03/02 Javascript
jQuery固定元素插件scrolltofixed使用指南
2015/04/21 Javascript
jQuery寻找n以内完全数的方法
2015/06/24 Javascript
jQuery form插件的使用之处理server返回的JSON, XML,HTML数据
2016/01/26 Javascript
JavaScript 函数模式详解及示例
2016/09/07 Javascript
Angularjs按需查询实例代码
2017/10/30 Javascript
vue项目中引入vue-datepicker插件的详解
2019/05/14 Javascript
a标签调用js的方法总结
2019/09/05 Javascript
js基础之事件捕获与冒泡原理
2019/10/09 Javascript
js实现验证码干扰(动态)
2021/02/23 Javascript
在Python中进行自动化单元测试的教程
2015/04/15 Python
Python解决走迷宫问题算法示例
2018/07/27 Python
10分钟用python搭建一个超好用的CMDB系统
2019/07/17 Python
Django REST framework 如何实现内置访问频率控制
2019/07/23 Python
浅析Windows 嵌入python解释器的过程
2019/07/26 Python
python如何调用百度识图api
2020/09/29 Python
利用CSS3实现动态的二级三级菜单效果实例源码
2017/01/04 HTML / CSS
HTML5的表单(绝对特别强大的功能)使用示例
2013/06/20 HTML / CSS
Canvas在超级玛丽游戏中的应用详解
2021/02/06 HTML / CSS
GNC健安喜美国官网:美国第一营养品牌
2016/07/22 全球购物
老师推荐信
2013/10/28 职场文书
护士节策划方案
2014/05/19 职场文书
党的群众路线教育实践活动个人对照检查材料(企业)
2014/11/05 职场文书
2014年技术部工作总结
2014/12/12 职场文书
读书笔记怎么写
2015/07/01 职场文书