是否可以将with
语句直接用于 CSV 文件?能够做这样的事情似乎很自然:
import csv
with csv.reader(open("myfile.csv")) as reader:
# do things with reader
但是 csv.reader 不提供__enter__
and__exit__
方法,所以这不起作用。但是,我可以分两步完成:
import csv
with open("myfile.csv") as f:
reader = csv.reader(f)
# do things with reader
这第二种方式是理想的方式吗?他们为什么不让 csv.reader 直接与 with 语句兼容?