zoukankan      html  css  js  c++  java
  • 使用Arcpy时发生"RuntimeError: ERROR 999998: Unexpected Error"错误备注

    1.错误说明

    使用Arcpy处理tif间乘机操作后将结果保存的tif时出错,但前几次运行正常,运行几次后出现错误。错误具体如下:

    Traceback (most recent call last):
    File "E:/WorkSpace/Python/Arcpy/test.py", line 9, in <module>
    finalResults.save("E:/WorkSpace/Python/data/first.tif")
    RuntimeError: ERROR 999998: Unexpected Error.

    2.完整代码

    import arcpy
    from arcpy import env
    from arcpy.sa import *
    
    env.workspace = "E:/WorkSpace/Python/data/"
    inRaster1 = "raster1.tif"  # float
    inRaster2 = "raster2.tif"  # float
    outTimes = Times(inRaster1 ,inRaster2) 
    outTimes.save("E:/WorkSpace/Python/data/first.tif")

    3.原因分析

    因前几次运行正常,但几次后出现此错误,表明代码应该没有问题,错误应该时其他方面的,查询后隐约看到有人说为内存问题,感觉有道理。查后得,Arcpy内存相关代码,插入,无效,如下:

    import arcpy
    from arcpy import env
    from arcpy.sa import *
    
    
    arcpy.ClearWorkspaceCache_management()
    arcpy.Delete_management("in_memory")
    
    env.workspace = "E:/WorkSpace/Python/data/"
    inRaster1 = "raster1.tif"  # float
    inRaster2 = "raster2.tif"  # float
    outTimes = Times(inRaster1 ,inRaster2) 
    outTimes.save("E:/WorkSpace/Python/data/first.tif")

    无奈之下,重启电脑,再运行,保存正常。故应该还是内存问题,估计代码位置或者内存处理代码不对,将重启作为一劣质解决办法。

    但在后续实验过程中,调整代码位置,分别在指明工作空间后和代码结束后插入清理工作空间的代码,可发挥一定作用。如若不行,再重启。

    import arcpy
    from arcpy import env
    from arcpy.sa import *
    
    env.workspace = "E:/WorkSpace/Python/data/"
    arcpy.ClearWorkspaceCache_management()  # 在指明工作空间后使用
    arcpy.Delete_management("in_memory")
    inRaster1
    = "raster1.tif" # float inRaster2 = "raster2.tif" # float outTimes = Times(inRaster1 ,inRaster2) outTimes.save("E:/WorkSpace/Python/data/first.tif")
    arcpy.ClearWorkspaceCache_management()
    # 在代码结束后使用 arcpy.Delete_management("in_memory")

    如各位看客有所启发,欢迎留言,不胜感激。

  • 相关阅读:
    SSIS ->> Excel Destination无法接受大于255个字符长度的字符字段(转载)
    在express站点中使用ejs模板引擎
    Kali Linux系列教程之OpenVas安装
    Kali Linux Web 渗透测试视频教程— 第二课 google hack 实战
    Kali Linux Web 渗透测试视频教程— 第四课 google hack 实战
    google hack 之 查询语法
    shellKali Linux Web 渗透测试— 初级教程(第三课)
    NODE-WEBKIT教程(12)全屏
    node-webkit教程(11)Platform Service之shell
    node-webkit教程(10)Platform Service之File dialogs
  • 原文地址:https://www.cnblogs.com/waterbbro/p/14535570.html
Copyright © 2011-2022 走看看