with管理文件操作上下文

with管理文件操作上下文

with open(文件路径,打开模式(rt/wt/at/rb/wb/ab),编码格式) as 变量名:

使用open打开文件后,还需要手动释放文件对操作系统的占用。但是我们可以更方便的打开文件,即Python提供的上下文管理工具——with open()

with open('F:\FTW.txt','r',encoding='utf8') as f:
    data = f.read()
    print(data)

今天是一个美好的日子,可惜不在黑夜,鸟不在鸣叫,交通不在拥堵。
我今天没去金山寺
最初的相遇 最后的别离,期待相遇与别离。
今天是一个美好的日子,可惜不在黑夜,鸟不在鸣叫,交通不在拥堵。
我今天没去金山寺
最初的相遇 最后的别离,期待相遇与别离。    

with open()方法不仅提供自动释放操作系统占用的 方法,并且with open()可以 使用逗号分隔,一次性打开多个文件,实现文件的快速拷贝。

with open('F:\FTW.txt','rb') as fr1,\
    open('F:\FTA.txt','wb') as fw,\
    open('F:\FTA.txt','rb') as fr2:
     data=fr1.read()
     result=fw.write(data)
     data1=fr2.read(result)
     print(f'first:{data}')
     print(f'second:{data1}')
    
first:b'\xe4\xbb\x8a\xe5\xa4\xa9\xe6\x98\xaf\xe4\xb8\x80\xe4\xb8\xaa\xe7\xbe\x8e\xe5\xa5\xbd\xe7\x9a\x84\xe6\x97\xa5\xe5\xad\x90\xef\xbc\x8c\xe5\x8f\xaf\xe6\x83\x9c\xe4\xb8\x8d\xe5\x9c\xa8\xe9\xbb\x91\xe5\xa4\x9c\xef\xbc\x8c\xe9\xb8\x9f\xe4\xb8\x8d\xe5\x9c\xa8\xe9\xb8\xa3\xe5\x8f\xab\xef\xbc\x8c\xe4\xba\xa4\xe9\x80\x9a\xe4\xb8\x8d\xe5\x9c\xa8\xe6\x8b\xa5\xe5\xa0\xb5\xe3\x80\x82\r\n\xe6\x88\x91\xe4\xbb\x8a\xe5\xa4\xa9\xe6\xb2\xa1\xe5\x8e\xbb\xe9\x87\x91\xe5\xb1\xb1\xe5\xaf\xba\r\n\xe6\x9c\x80\xe5\x88\x9d\xe7\x9a\x84\xe7\x9b\xb8\xe9\x81\x87 \xe6\x9c\x80\xe5\x90\x8e\xe7\x9a\x84\xe5\x88\xab\xe7\xa6\xbb\xef\xbc\x8c\xe6\x9c\x9f\xe5\xbe\x85\xe7\x9b\xb8\xe9\x81\x87\xe4\xb8\x8e\xe5\x88\xab\xe7\xa6\xbb\xe3\x80\x82\r\n\xe4\xbb\x8a\xe5\xa4\xa9\xe6\x98\xaf\xe4\xb8\x80\xe4\xb8\xaa\xe7\xbe\x8e\xe5\xa5\xbd\xe7\x9a\x84\xe6\x97\xa5\xe5\xad\x90\xef\xbc\x8c\xe5\x8f\xaf\xe6\x83\x9c\xe4\xb8\x8d\xe5\x9c\xa8\xe9\xbb\x91\xe5\xa4\x9c\xef\xbc\x8c\xe9\xb8\x9f\xe4\xb8\x8d\xe5\x9c\xa8\xe9\xb8\xa3\xe5\x8f\xab\xef\xbc\x8c\xe4\xba\xa4\xe9\x80\x9a\xe4\xb8\x8d\xe5\x9c\xa8\xe6\x8b\xa5\xe5\xa0\xb5\xe3\x80\x82\r\n\xe6\x88\x91\xe4\xbb\x8a\xe5\xa4\xa9\xe6\xb2\xa1\xe5\x8e\xbb\xe9\x87\x91\xe5\xb1\xb1\xe5\xaf\xba\r\n\xe6\x9c\x80\xe5\x88\x9d\xe7\x9a\x84\xe7\x9b\xb8\xe9\x81\x87 \xe6\x9c\x80\xe5\x90\x8e\xe7\x9a\x84\xe5\x88\xab\xe7\xa6\xbb\xef\xbc\x8c\xe6\x9c\x9f\xe5\xbe\x85\xe7\x9b\xb8\xe9\x81\x87\xe4\xb8\x8e\xe5\x88\xab\xe7\xa6\xbb\xe3\x80\x82\r\n'
second:b''    

转载于:https://www.cnblogs.com/zuihoudebieli/p/10940132.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值