7 votos

¿Por qué la clase arcpy.da.SearchCursor () no se completa automáticamente en Eclipse?

Soy muy nuevo en GIS.

Acabo de instalar eclipse luna con el complemento pydev y ArcGIS 10.1 para escritorio.

Cuando escribo un script, al intentar importar arcpy.da.SearchCursor veo que no hay SearchCursor disponible para autocompletar.

introduzca la descripción de la imagen aquí

¿Cuál es el problema? ¿Que hice mal?

17voto

No creo que el cartel original estaba preguntando acerca de cómo utilizar arcpy.da.SearchCursor(), sino que el arcpy.da.SearchCursor() de la clase fue que no aparecen en el código de la ventana de finalización dentro de Eclipse (a veces llamado intellisense o inteligente de la finalización de código).

He estado usando Eclipse+PyDev y/o LiClipse para la edición de código para las herramientas de geoprocesamiento desde ArcGIS 10.1 salió, y he nunca ha sido capaz de obtener el código de terminación por cualquier arcpy.da módulos. Hay un par de posts acerca de esto en el Esri GeoNet (anteriormente Esri foros), ver uno, dos, y tres. En el hilo de uno, Dave de Esri dice (el énfasis es mío):

El objetivo primordial para el acceso a datos el módulo de la velocidad. Como estoy seguro de que eres consciente de los mayores cursor modelo no fue tan rápido. Como parte de eso, arcpy.da no tiene el Python contenedores que ofrecen el menú desplegable de la que ves en la mayoría de arcpy. Esencialmente, se trataba de un trade-off entre la velocidad y la IDE-amistad, y en este caso el criterio dictado de la velocidad de triunfo.

Así que por desgracia, no hay manera de conseguir Eclipse agradable finalización de código para el da módulo. Sin embargo, usted todavía puede evitar la molesta rojo Undefined variable from import: SearchCursor de error en Eclipse poniendo #@UndefinedVariable al final de la línea, así:

MyCursor = arcpy.da.SearchCursor("MyLayer",["*"]) #@UndefinedVariable

5voto

David Holm Puntos 6165

SearchCursor es una clase en el módulo arcpy.da y no un módulo en sí, así que si desea importar solo esa clase, puede usar:

 from arcpy.da import SearchCursor
 

A continuación, puede hacer referencia a él como SearchCursor .

También puede importar todo el módulo y hacer referencia a la clase dentro, y también vale la pena señalar que import arcpy importa automáticamente arcpy.da y un montón de otras cosas relacionadas con arcpy.

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