欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python学习笔记(十)、文件操作

程序员文章站 2023-04-07 20:34:23
在前面我们了解到了没得模块,其中有一个模块为fileinput,为文件操作模块,不知道小伙伴们是否还记得? 1 打开文件 要打开文件,可以使用fileinput中的fileinput.input函数进行打开,也可以使用模块 io 中的open函数。open(filename, mode='r', b ......

在前面我们了解到了没得模块,其中有一个模块为fileinput,为文件操作模块,不知道小伙伴们是否还记得?

 

1 打开文件

  要打开文件,可以使用fileinput中的fileinput.input函数进行打开,也可以使用模块 io 中的open函数。open(filename, mode='r', buffering=none, encoding=none, errors=none, newline=none, closefd=true)

  • filename:文件路径名。
  • mode:指定进行操作的模式。(r - 读取模式,文件不存在异常;w - 写入模式,文件不存在时新建文件;x - 独占写入模式;a - 附加模式;b - 二进制模式,与其他模式结合使用; t - 文本模式,默认值,与其他模式集合使用;+ - 读写模式,与其他模式结合使用)
  • buffering:如果 buffering 的值被设为 0,就不会有寄存。如果 buffering 的值取 1,访问文件时会寄存行。如果将 buffering 的值设为大于 1 的整数,表明了这就是的寄存区的缓冲大小。如果取负值,寄存区的缓冲大小则为系统默认。
  • encoding:编码格式

2 操作文件的基本方法

  我们一般将对文件的操作对象称为。如:f1 = open('file.txt', 'r')   /   f2 = open('file.txt', 'w')

  2.1 读取和写入

  f2.write(string):方法write将字符串写入到文件既有内容的后面。

  f2.writelines(list):方法writelines将一个可迭代的对象写入到文件中,写入的时候不会自动添加换行符,因此你必须自行添加换行。

  f1.read([n]):方法read可多去文件全部内容,或指定要读取字符串个数 n 。

  f1.readline():方法readline多去文件一行的内容。

  f1.readlines():方法readlines读取文件所有行,并以列表的方式返回它们。

  2.2 关闭文件

  在python中,通常程序退出时将自动关闭文件,然后避免发生异常,文件没有正常关闭,我们通常在操作完文件后,使用函数close进行关闭。如:

  try:

    # 文件操作

  finally:

    f.close()

  实际上,python有一条专门为此设计的语句,那就是with语句,在该语句执行完毕后,将自动关闭文件,即便在执行中发生异常后也会自动关闭。如:

  with open('file.txt') as f1:

    pass