如何命名带有特定日期的*.tif文件



我必须创建一些*.tif文件,我需要用特定的日期命名它们。例如,我有一个具有152x380矩阵的*.mat文件,每行对应一个*.tif文件和一个特定日期(例如,第1行对应于第一个*.tif文件,我需要将其命名为20120101(YYYYMMDD(,下一行是第二个*.tif文件,其名称必须为20120102,依此类推(。你们知道如何根据解释命名*.tif文件吗?你可以在下面看到我的代码

# Load *.mat file with the precipitation data
root_mat = r"f:myfilePrecip10km.mat"
mat = scipy.io.loadmat(root_mat)
precipitation = mat['out'] #out variable contains the required data
precipitation = np.array(precipitation)
for i in range(len(precipitation)):
array = precipitation[i]
array = np.reshape(array, (19,20))
driver = gdal.GetDriverByName('GTiff')
# In this line the variable "output_raster_name" need to assign a specific date
# (e.g. the first file should be named 20120101, the second 20120102, the third 200120103
# and so on)
new_tiff = driver.Create(output_raster_name, array.shape[1],
array.shape[0], 1, gdal.GDT_Int16)

提前感谢

您可以使用datetime.date对象并添加天数。

startdate = datetime.date(2022, 7, 29)
for offset, datarow in enumerate(precipitation):
rowdate = startdate + datetime.timedelta(days=offset)
filename = rowdate.strftime("%Y%m%d.tif")
output_raster_name = os.path.join(directory, filename)
new_tiff = driver.Create(output_raster_name, ...)

您可以尝试以下操作:

from datetime import datetime
current_time = datetime.now().strftime('%Y-%m-%d_%H:%M:%S')
file_name = '$your-file-name' + '_' + current_time
file_format = '$your-file-format'

final_file_name_with_extension = file_name + '.' + file_format

最新更新