欢迎光临
我们一直在努力

Python文件操作指南

一、.打开文件

在Python中通常使用open()函数来打开一个文件。它的使用形式为:

其功能为打开一个文件。这里的打开文件与在操作系统中打开文件的概念不同,这里的打开文件是与文件建立通道并获取操作文件的权限。注意不能在使用代码操作文件时,还通过操作系统操作文件,否则会造成冲突。

其中的参数是:

参file:需要打开的文件将经(包含路经和完整的文作名称),其教据类型为字符串类型。

参数mode:指明文件打开的模式

参数buffering:用于设置缓冲区大小,即设置内存一次读取文件内容的大小,对读取性能无要求时此项参数保持默认即可。如果需要设置,该参数是一个可选的整数。值为0表示关闭缓冲(只在二进制模式下可用),值为1表示选择行缓冲(只在文本模式下可用)。如果值大于1,表示设置固定大小的块缓冲区。默认值-1表示选择默认大小的缓冲区,通常操作系统默认缓冲区大小为4096或8192字节。

参数encoding:表示需要打开文件的编码方式,在文本模式下有效。默认编码方式与平台相关,通常为'cp936'编码方式,是GBK编码方式的一种。

参数errors:用于指定如何处理编码错误,该参数不能在二进制模式下使用。如果存在编码错误,则传递“strict”以引发Value Error异常(默认值“None”具有相同效果),或者传递“ignore”以忽略错误(请注意,忽略编码错误可能会导致数据丢失)。

参数newline:控制通用换行符的工作方式(只适用于文本模式)。它可以是None、"、'\\n'、'\\r'或'\\r\\n'。

参数closefd:如果该参数值为False,当关闭文件时,底层文件描述符操作系统内部利用文件描述符来访问文件,相当于操作系统和文件的通道将保持打开状态,即不关闭文件对象。如果该参数值为Ture, 当给定一个文件名时,参数closefd将不起作用。

参数opener:自定义启动器。

1.打开模式

open()函数的mode参数具有多个打开模式,接下来将介绍其中几个常见模式的使用效果,分别为'w'覆盖写模式、'x'创建写模式、'a'追加写模式、'+'增加模式。

(1)'w'覆盖写模式。'w'模式为覆盖写模式,如果文件夹中没有参数file路径中指定的文件,则会创建名为file的文件,如果文件夹中此文件已存在,则删除此文件中的内容,重新写入新的内容。

(2)'x'创建写模式。'x'模式为创建写模式,在使用'x'模式时,会创建一个新文件,并给定新文件写入权限。如果计算机中已存在与参数file同名的文件,则会出现异常错误,因此需要确保创建的文件在计算机中并不存在。

(3)'a'追加写模式。'a'模式为追加写模式,使用此模式时,会保留原有的文件内容,并在文件的末尾继续追加写入新内容。如果文件不存在,则会创建一个新文件,新文件具备写入权限。

(4)'+'增加模式。'+'增加模式为增加模式,此模式需要与'r'、'w'、'x'、'a'模式中的一种结合使用,表示在原有模式基础上增加读写权限。

(5)open()函数的复合写法。open()函数还有一种复合写法,可以避免用户因忘记使用close()方法关闭文件而导致的程序异常等问题,它的使用方式为:

其中with是Python中的保留字,是一种上下文管理器,可以自动管理文件,无须再使用close()方法来进行文件的关闭操作。as是Python中的保留字,与with结合使用。 二、读取文件

读取文件内容前需要确定文件的打开模式是否为只读模式(r模式),如果是,则可以使用文件对象中的read()、readline()、readlines()方法读取文件内的信息。

1.read()方法。其使用形式为:

功能为从文件中读取内容。其中size是从文件中读取size个字符的内容,默认读取全部内容。返回值为读取内容,是字符串类型的。

2.readline()方法。其使用形式为:

功能为从文件中读取一行内容。其中参数size是默认从文件中读取一行内容,如果size为其他数值,则读取该行前size个字符。返回值为读取内容,是字符串类型的。

3.readlines()方法。其使用形式为:

功能为从文件中读取所有行的内容,以列表形式返回,每行内容为列表中的一个元素。其中参数hint是获取所在行内容的hint个字符。例如第1行有5个字符,hint=5,就只读取第1行内容(hint<=5时都只会读取第1行的内容)。第2行如果有5个字符,hint=6,会读取第1行和第2行内容(5<=hint<=11时会读取前两行的内容)。返回值为包含文件内容的列表。

三、写入文件

1.write()方法,它的使用形式为:

功能为把字符串text写入文件。其中参数text表示需要写入的信息,其数据类型为字符串类型。返回值为返回写入的字符数(字符串的长度)。

2.writelines()方法,它的使用形式为:

功能为把字符串列表 (列表中的元素均为字符串)写入文件,且不添加换行符。其中参数lines是字符串列表。返回值为返回None,表示空。

赞(0)
未经允许不得转载:171主机测评 » Python文件操作指南
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址