我想保存新的txt文件,不覆盖旧的txt文件。有12个旧的txt文件。循环时如何保存12个新的

时间:2018-11-22 19:32:20

标签: python-3.x

我在特定目录中有一定数量的文件,在对它们进行一些操作后,我想像新文件一样保存。 我尝试此操作的实际代码是:

fileList=glob.glob('MODIS_temp_2010./*.txt')
f_len=len(fileList)
for k in range(0,f_len):
  filename=fileList[k]
  modis_temp=np.loadtxt(filename)
  modis_temp=np.array(modis_temp)
  modis_temp=np.where(modis_temp==0,np.nan,modis_temp)
  modis_temp=modis_temp*0.02
  modis_temp=modis_temp-273.15
  np.savetxt('modis_temp.txt',modis_temp)
  plt.imshow(modis_temp)

我需要如何更改它才能起作用?

1 个答案:

答案 0 :(得分:0)

从我的理解来看,您想在修改文件后将其保存在同一目录中。 由于您要将新文件保存在同一目录中,因此由于OS和文件系统的需要,它们必须是可区分的。如果我们在特定目录中,则使用不同的名称来完成此操作,或者对于同一名称文件使用不同的目录来完成此操作。 在您的情况下,我们需要创建一个新名称,然后可以附加例如当前日期,以指示编辑时间,以便新的十二个文件与旧的保持一致。

import datetime

today = datetime.datetime.now() #current date
date = today.strftime('%d_%m_%Y')
newname = filename.split('.')[0] #we are taking only the name not the extension part
newname += date

现在,您有了一个新的文件名,指示文件的编辑时间。更好的解决方案是使用名称的编辑日期创建一个新目录,然后写入文件,以便它们保持相同的名称。