Python-使用gdal编写光栅
我想在函数中编写一个带有Python-使用gdal编写光栅,python,raster,gdal,Python,Raster,Gdal,我想在函数中编写一个带有gdal的光栅 def WriteRaster(InputArray, OutputFile, NROWS, NCOLS, XULCorner, YULCorner, Cellsize, wkt_projection): driver = gdal.GetDriverByName("GTiff") dataset = driver.Create("%s", NROWS, NCOLS, 1, gdal.GDT_Float32 %(OutputFile)) dataset.S
gdal
的光栅
def WriteRaster(InputArray, OutputFile, NROWS, NCOLS, XULCorner, YULCorner, Cellsize, wkt_projection):
driver = gdal.GetDriverByName("GTiff")
dataset = driver.Create("%s", NROWS, NCOLS, 1, gdal.GDT_Float32 %(OutputFile))
dataset.SetGeoTransform((XULCorner,Cellsize,0,YULCorner,0,-Cellsize))
dataset.SetProjection(wkt_projection)
dataset.GetRasterBand(1).WriteArray(InputArray)
dataset.FlushCache()
return None
我得到这个错误:
%不支持的操作数类型:'int'和'str'
我想我可以这样定义输出文件名。为什么不呢
谢谢你的帮助 我认为这句话:
dataset = driver.Create("%s", NROWS, NCOLS, 1, gdal.GDT_Float32 %(OutputFile))
应该更像:
dataset = driver.Create("%s"%(OutputFile), NROWS, NCOLS, 1, gdal.GDT_Float32 )
看到我移动了%(OutputFile)位了吗
但是,如果OutputFIle是字符串,则可以使用:
dataset = driver.Create(OutputFile, NROWS, NCOLS, 1, gdal.GDT_Float32 )
有关格式字符串的更多信息,请参阅。提示错误发生在哪一行?当我想定义输出文件名dataset=driver时,会发生错误。创建(“%s”,NROWS,NCOLS,1,gdal.GDT_Float32%(OutputFile))是的,gdal.GDT_Float32%(OutputFile)没有多大意义。非常感谢您的帮助。现在一切正常