Python close函数:关闭文件_第1页
Python close函数:关闭文件_第2页
Python close函数:关闭文件_第3页
Python close函数:关闭文件_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Pythonclose。函数:关闭文件

在前面章节中,对于使用openO函数打开的文件,我们一

直都在用closeO函数将其手动关闭。本节就来详细介绍

一下close()函数。

closeO函数是专门用来关闭已打开文件的,其语法格式也

很简单,如下所示:

file,close()

其中,file表示已打开的文件对象。

读者可能一直存在这样的疑问,即使用cpen()函数打开的

文件,在操作完成之后,一定要调用closeO函数将其关

闭吗?答案是肯定的。文件在打开并操作完成之后,就应该

及时关闭,否则程序的运行可能出现问题。

举个例子,分析如下代码:

importos

f=open(〃myfile.'w')

os.remove(/zmy_file.txt")

代码中,我们引入了OS模块,调用了该模块中的remove()

函数,该函数的功能是删除指定的文件。但是,如果运行此

程序,Python解释器会报如下错误:

Traceback(mostrecentcalllast):

File'C:\Users\incngnia\Dcsktop\demo.py",line4,in

<module>

os.remove(/zmy_file.txt〃)

PermissionError:[WinError32]另一个程序正在使用此

文件,进程无法访问。:'my_file.txt'

显然,由于我们使用了open()函数打开了my_file.txt

文件,但没有及时关闭,直接导致后续的remove()函数运

行出现错误。因此,正确的程序应该是这样的:

importos

z=open(〃myfile,txt〃,'w')

f.close()

#...

os.remove(,zmy_file.txt")

当确定my_file.txt文件可以被删除时,再次运行程序,

可以发现该文件已经被成功删除了。

再举个例子,如果我们不调用closeO函数关闭已打开的

文件,确定不影响读取文件的操作,但会导致write0或

者writelineO函数向文件中写数据时,写入失败。例如:

:'=open("myfile,txt",'w’)

f.write(,zthisisatest")

程序执行后,虽然Python解释器不报错•,但打开

my.file.txt文件会发现,根本没有写入成功。这是因为,

在向以文本格式(而不是二进制格式)打开的文件中写入数

据时,Python出于效率的考虑,会先将数据临时存储到缓

冲区中,只有使用close()函数关闭文件时,才会将缓冲

区中的数据真正写入文件中。

因此,在上面程序的最后添加如下代码:

1.f.close()

再次运行程序,就会看到〃thisisatest"成功写入到了

a.txt文件。

当然在某些实际场景中,我们可能需要在将数据成功写入到

文件中,但并不想关闭文件。这也是可以实现的,调用

flush()函数即可,例如:

1.f=open("'myfile.txt,z,'w')

2.f.write("thisisatest"

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论