Python中csv文件的操作2

《Python中文件的读取2-1》

中提到,每当不需要操作文件时,需要把通过open()函数打开的文件再通过close()关闭掉。

1 不关闭已打开的文件带来的影响

使用如图1所示的代码,不关闭已经打开的文件。

图1 不关闭已经打开的文件

从图1中可以看出,第2行代码打开了D盘根目录下“水果.csv”文件,在去读内容并且显示内容后,并没有调用close()函数关闭该文件;第5行代码调用了os模块中的system()函数,使得程序并没有马上结束,而是处于“暂停”状态,来模拟python程序在做其它事情。

运行图1显示的程序,效果如图2所示。

图2 程序运行效果

从图2中可以看出,程序在输出了读取到的内容之后,就处于“暂停”状态了,此时不要关闭该控制台窗口,让程序继续运行。此时,如果去删除或者移动“水果.csv”文件,就会显示如图3所示的提示信息。

图3 删除文件时的提示信息

也即是无法删除或者移动“水果.csv”文件,因为此时该文件被图1所示的程序所占用,只有该程序结束后,才能删除或移动“水果.csv”文件。

注意1 在没有close已打开的文件时,可以读取和修改文件内容,但是不能删除或移动该文件。

2 with as语句打开csv文件

使用with as语句打开csv文件,在该语句结束后,会自动关闭已打开的程序,代码如图4所示。

图4 使用with as语句打开csv文件

第2行代码使用with as语句打开csv文件,with和as的中间是打开文件的语句,as之后表示打开文件保存的变量;第3-4行表示打开文件后要做的事情,即读取文件内容并显示,此时with as语句结束,自动关闭已打开的文件,也就是说,虽然此时没有显式调用close()函数,但是“水果.csv”文件已经隐式地被关闭。

运行图4所示的程序,在保证程序处于“暂停”状态时,可以成功删除“水果.csv”文件。

当编写操作csv文件的代码时,可以使用with as语句打开csv文件,这样即使忘记调用close()函数关闭文件,也不影响后续操作。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值