你好,如果我有以下代码:
n = len([name for name in os.listdir(DIR) if os.path.isfile(os.path.join(DIR, name))])
for i in range(0, n):
dat_file = r'C1/C10000' + str(i).zfill(2) + '.dat'
csv_file = r'C1_conv/C10000' + str(i).zfill(2) + '.csv'
in_dat = csv.reader(open(dat_file, 'rb'), delimiter = '\t')
out_csv = csv.writer(open(csv_file, 'wb'))
out_csv.writerows(in_dat)
我的问题是,最后一个文件保持打开状态。 我试着用in_dat.close()..关闭它,但是读到它不可能,因为它是一个解析器
我读过“with”函数,但不知道如何把它放进去。 有人能告诉我正确的密码吗
谢谢:D
您需要在单独的变量中跟踪打开的文件,并在完成写入操作后将其关闭。更好的约定是使用
with open(fname)
语法,它为您关闭文件您可以查阅以下代码片段,以便更好地理解:
相关问题 更多 >
编程相关推荐