码迷,mamicode.com
首页 > 编程语言 > 详细

Python open()函数打开文件的模式详解

时间:2019-06-19 14:57:16      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:href   lin   python基础   源码   用法   对象   讲解   允许   二进制   

Python open函数的模式详解
  在Python中使用open()函数打开文件,并返回一个文件对象,然后通过文件对象对文件进行读写操作。不同类型的文件需要采用不同的模式来打开,并且采用不同模式打开文件,我们可以进行的操作以及程序运行的结果也是不同的。

打开模式

open()函数完整的语法格式为:

open(file, mode=‘r’, buffering=None, encoding=None, errors=None, newline=None, closefd=True)
函数定义的参数挺多,这里我们着重讲解mode——文件打开模式。mode参数有两大类,分别用来指定打开文件的文件格式和读写模式。

文件格式相关参数

t:以文本格式打开文件(默认)。一般用于文本文件,如:txt。
b:以二进制格式打开文件。一般用于非文本文件,如:图片。
这一类参数可以与其它的模式参数组合使用,用于指定打开文件的格式,需要根据你要打开文件的类型进行选择。

读写模式相关参数

r:以只读方式打开文件(默认模式)。文件指针定位在文件头的位置。如果文件不存在会报错
w:以只写方式打开文件。如果文件存在,则打开文件,清空文件内容,从文件头开始编辑;如果文件不存在,则创建新文件,打开编辑。
a:以追加方式打开文件,同样是只写,不允许进行读操作。如果文件存在,则打开文件,将文件指针定位到文件尾。因此,新的内容是追加在已有内容之后。如果文件不存在,则创建新文件进行写入。
+:打开一个文件进行更新(可读写)。注意:该模式不能单独使用,需要与r/w/a组合使用。打开文件后文件指针的位置取决于另一个组合参数。

组合模式

r+:打开一个文件用于读写。如果文件存在,则打开文件,将文件指针定位在文件头,新写入的内容在原有内容的前面;如果文件不存在会报错。
w+:打开一个文件用于读写。如果文件存在,则打开文件,清空原有内容,进入编辑模式;如果文件不存在,则创建一个新文件进行读写操作。
a+:以追加模式打开一个文件用于读写。如果文件存在,则打开文件,将文件指针定位在文件尾,新写入的内容在原有内容的后面;如果文件不存在,则创建一个新文件用于读写。

所有上面这些模式默认都是t——文本模式,如果要以二进制模式打开,需要加上参数b,如:rb、rb+、wb、wb+、ab、ab+。

在了解了各种模式参数的具体用法后,根据您要打开的文件类型,以及打开文件后的操作类型来选用正确的mode参数即可。

Python open()函数打开文件的模式详解

标签:href   lin   python基础   源码   用法   对象   讲解   允许   二进制   

原文地址:https://blog.51cto.com/13850653/2410859

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!