首页技术文章正文

Python培训:文件的打开和关闭

更新时间:2022-10-06 来源:黑马程序员 浏览量:

  我们试想一下,如果想用Word编写一份个人简历,则可以分为以下几步:

  (1)打开Word软件,新建一个文件。

  (2)编写个人简历信息。

  (3)保存文件。

  (4)关闭Word软件。

  同样,在Python中操作文件的整体过程与使用Word编写一份简历的过程很相似,一般可以分为以下几步:

  (1)打开文件,或者新建立一个文件。

  (2)读/写数据。

  (3)关闭文件。

  接下来,本节将针对文件的打开和关闭操作分别进行详细地讲解。

  一、文件的打开

  在Python中,open函数用来打开文件,语法格式如下:

open(文件名[, 访问模式])

  上述格式中,“文件名”必须要填写,“访问模式”是可选的(后面会详细介绍访问模式)。

  例如,打开一个名称为“test.txt”的文件,示例代码如下:

file = open('test.txt')

  需要注意的是,使用open函数打开文件时,如果没有注明访问模式,则必须保证文件是存在的,否则会报如下所示的异常信息。

Traceback (most recent call last):
  File "<input>", lin1, in<module>
FileNotFoundError: [Errno 2] No such file or directory: 'test.txt'

  二、文件模式

  如果使用open函数打开文件时,只传入了文件名参数,那么我们只能读取文件。此时,要想在打开的文件中写入数据,就必须指明文件的访问模式。Python中文件的访问模式有很多种,接下来,笔者来做一些详细的介绍。

  1.r:默认模式。以只读方式打开文件,文件的指针将会放在文件的开头。

  2.w:打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

  3.a:打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

  4.rb:以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。

  5.wb:以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

  6.ab:以二进制格式打开一个文件用于追加。如果该文件已经存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

  7.r+:打开一个文件用于读写。文件指针将会放在文件的开头。

  8.w+:打开一个文件用于读写。如果该文件已经存在则将其覆盖。如果该文件不存在,创建新文件。

  9.a+:打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。

  10.rb+:以二进制格式打开一个文件用于读写。文件指针将会放在文件开头。

  11.wb+:以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

  12.ab+:以二进制格式打开一个文件用于追加,如果该文件已经存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

  三、文件的关闭

  凡是打开的文件,切记要使用close方法关闭。即使文件会在程序退出后自动关闭,但是考虑到数据的安全性,在每次使用完文件后,都要使用close方法关闭文件,否则一旦程序崩溃,很可能导致文件中的数据没有保存。close方法的使用非常简单,具体示例如下:

# 新建一个文件,文件名为itheima.txt
file = open('itheima.txt', 'w')
# 关闭这个文件
file.close()


分享到:
在线咨询 我要报名
和我们在线交谈!