首页 > 其他分享 >with open() as读写文件

with open() as读写文件

时间:2023-05-22 21:44:07浏览次数:25  
标签:文件 调用 读写 写入 file close open

with open( 'test.txt','r') as f:
print(f . read( ) )

  

文件对象属性
file.closed 文件已经关闭,否则为False
file.mode 打开文件时使用的访问模式
file.encoding 文件所使用的编码
file.name 文件名
file.newlines 未读取到行分隔符时为None


文件读写时都有可能产生IOError,一旦出错,后面的f.close()就不会调用。
f.close()使用太繁琐了,所以Python引入了with open()来自动调用close()方法


open()与with open()区别
1、open需 要主动调用close(),with不需要
2、open读取文件时发生异常,没有任何处理,with 很好的处理上下产生的异常

用with同时操作多个文件
with open("testest.py", '门) as f1, open("test/test2.py", '门) as f2:rint(f.ead()print(f2.read()


你可以反复调用write() 来写入文件,但是务必要调用f.close()来关闭文件。
写文件的原理
当我们写文件时,操作系统往往不会立刻把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。
只有调用close()方法时,操作系统才保证把没有写入的数据全部写入磁盘。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了。
所以,还是用with语句好

标签:文件,调用,读写,写入,file,close,open
From: https://www.cnblogs.com/sangern/p/17421829.html

相关文章

  • 导入文件的目录路径
    earth-forecasting-transformer/src/earthformer/config.pyscripts/cuboid_transformer/enso/train_cuboid_enso.py在这种情况下,你可以使用以下代码在"train_cuboid_enso.py"中导入"cfg":from.......
  • 即时通讯(IM)开源项目OpenIM对WebAssembly支持,提升web端体验
    WebAssembly是什么?2019年12月,W3C标准批准了第四种官方语言:WebAssembly(Wasm)。这种语言在结构、使用和功能方面与以前的语言有很大不同。WebAssembly是一种新的编码方式,可以在现代的Web浏览器中运行-它是一种低级的类汇编语言,具有紧凑的二进制格式,可以接近原生的性能运行,并......
  • response返回文件给前端
    @GetMapping("/getPdf2")publicvoidgetPdf2(HttpServletResponseresponse)throwsIOException{Filefile=newFile("D://aasd.pdf");FileInputStreamfileInputStream=newFileInputStream(file);ServletOu......
  • 第六章 文件及文件系统 6.5 目录管理
    文件目录由文件说明索引组成的,用于文件检索的特殊文件。文件目录也是一种数据结构,用于标识系统中的文件及其物理地址,供检索时使用对目录管理的要求如下:(1)实现“按名存取”(2)提高对目录的检索速度 (3)文件共享(4)允许文件重名 文件目录的内容主要是文件访问的控制......
  • 关于springboot上传完文件读取时资源目录未更新的情况
    之前在实现教学视频上传功能的时候碰到了一个问题,那就是每上传完一个视频文件,页面找不到对应的路径,必须重新构建项目才能找到相应的文件今天在课堂上向老师咨询,才明白javaweb项目读取资源并不是读取实际的本地资源,而是读取target对应目录下的,每个项目都会生成一个对象的target目......
  • python 问题修复ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+
    目录python问题修复ImportError:urllib3v2.0onlysupportsOpenSSL1.1.1+升级openssl版本降低urllib版本python问题修复ImportError:urllib3v2.0onlysupportsOpenSSL1.1.1+这个问题时python版本安装的urllib3版本过高,而openssl版本太低导致的解决无非两种方法,降低......
  • Springboot文件上传接口
    Springboot文件上传接口文件entiypackagecom.qingge.springboot.entity;importcom.baomidou.mybatisplus.annotation.IdType;importcom.baomidou.mybatisplus.annotation.TableId;importcom.baomidou.mybatisplus.annotation.TableName;importlombok.Data;@Data......
  • 利用Python爆破数据库备份文件
    某次测试过程中,发现PHP备份功能代码如下://根据时间生成备份文件名$file_name='D'.date('Ymd').'T'.date('His');$sql_file_name=$file_name.'.sql';那么形成的文件名格式如:D20180118T101433.sql,理论上是可以爆破的,于是写了一段Python脚本来尝试爆破。Py......
  • WebUploader中实现文件上传下载的三种解决方案(推荐)
    ​ 这里只写后端的代码,基本的思想就是,前端将文件分片,然后每次访问上传接口的时候,向后端传入参数:当前为第几块文件,和分片总数下面直接贴代码吧,一些难懂的我大部分都加上注释了:上传文件实体类:看得出来,实体类中已经有很多我们需要的功能了,还有实用的属性。如MD5秒传的信息。pub......
  • 将某目录的文件复制到其他目录
    将某目录符合一定要求的文件复制到其他目录defcopy_files(src_dir,dst_dir):ifnotos.path.exists(dst_dir):os.makedirs(dst_dir)ifos.path.exists(src_dir):forfileinos.listdir(src_dir):if'unique_str'infile:#文件是......