19 votos

¿Por qué cerrar un conjunto de datos en Python GDAL?

Veo muy a menudo en el código Python GDAL que gente cerrar conjuntos de datos al final de su escritura. ¿Por qué tiene sentido cerrar un conjunto de datos en Python GDAL? ¿Hay consecuencias si no lo hago?

import gdal

# open dataset
ds = gdal.Open('test.tif')

# close dataset
ds = None

18voto

auramo Puntos 161

No creo que esto tiene un propósito en la final de la secuencia de comandos, como el Python recolector de basura va a hacer lo mismo de forma automática cuando el script finaliza. La razón que usted puede ser que desee hacer es en el medio de la secuencia de comandos, para recuperar los recursos que se encuentran al acceder al conjunto de datos, eliminar bloqueos de archivo, etc. así que usted puede volver a utilizarlos.

del ds debería tener el mismo efecto, pero es más claro en cuanto a sus intenciones.

El más Python el enfoque sería utilizar un with declaración, pero GDAL/OGR no implementarlo. Sin embargo, hay algunos GDAL/OGR contenedores como Rasterio y Fiona que hacer.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X