使用Python“;加上;ogr.open(文件)的语句
可以将Python语句与ogr.open(file)函数一起使用吗 例如,我想做如下事情:使用Python“;加上;ogr.open(文件)的语句,python,file,geospatial,ogr,Python,File,Geospatial,Ogr,可以将Python语句与ogr.open(file)函数一起使用吗 例如,我想做如下事情: with ogr.open(file) as ds: 目前,我只能做到以下几点: try: ds = ogr.open(file) ... except: del ds 根据文档,您似乎无法将与ogr.Open(file)一起使用 在with语句中使用的Python对象需要具有方法\uuuuuu enter\uuuu和\uuuuuu exit\uuuuu来设置和删除with块
with ogr.open(file) as ds:
目前,我只能做到以下几点:
try:
ds = ogr.open(file)
...
except:
del ds
根据文档,您似乎无法将
与ogr.Open(file)
一起使用
在with
语句中使用的Python对象需要具有方法\uuuuuu enter\uuuu
和\uuuuuu exit\uuuuu
来设置和删除with
块中使用的上下文
根据,这些\uuuuuuuuuuuuuuuuu
和\uuuuuuuuuu
方法没有为Open
返回的数据源对象定义,因此不能将ogr.Open
的结果用作with
语句的主题
因此,看起来您必须使用您的
尝试
/组合,但不使用
组合(尽管尝试
/最终
组合可能会更好)。您希望如何使用和
组合?在末尾调用ds.close()
?ds(数据源)对象没有close()属性。如果不使用try-finally组合(或try-except),我发现我的解释器会锁定打开的ds(数据源),即使脚本中有“del-ds”。谢谢,您的解释帮助我理解了为什么我不能使用它。这将有助于防止软件在脚本执行后对文件保持锁定。