Skip to main content
 首页 » 编程设计

Python使用with关键字操作文件

2022年07月19日138thcjp

Python中的with open语法,与Java 中的try resource,可以自动关闭释放资源。

Python中打开文件,处理数据,最后关闭文件。语法方式如下:

file = open('my_data.csv') 
df = file.read() 
print(df) 
file.close() 

上面示例的问题是很容易忘记关闭文件。更好的做法是使用with open,语法如下:

with open('my_data.csv') as file: 
   df = file.read() 
   print(df) 

使用这种方法,文件会自动关闭。所以不用担心忘记file.close()语句。
在这里插入图片描述

下面通过几个示例来巩固下。

读文件

下面代码展示了如何使用with open语法打开文件,读内容至内存,并在控制台打印:

with open('data/data.csv') as file: 
   df = file.read() 
   print(df) 

输出结果:

ATT 
A 
B 
C 
D 
E 
F 
G 
D 
E 
F 
G 
D 
E 
F 
G 
 

其中ATT是标题行,上面代码自动关闭打开文件,无需手动输入file.close().

写文件

下面代码使用with语句写一些文本至文件中:

with open('data_out.csv', 'w') as file: 
    file.write('Some text to write to CSV file') 

open的w参数表示写模式,与读模式相对。

读写文件

with还能一次打开多个文件。下面代码打开两个文件,一个读内容,另一个写内容:

with open('my_data.csv', 'r') as infile, open('data_out.csv', 'w') as outfile: 
    for line in infile: 
        outfile.write(line) 

需要提醒的是使用单个with语句能够同时打开多个文件。


本文参考链接:https://blog.csdn.net/neweastsun/article/details/125052147