Una de las primeras “trabas” que me han ocurrido al trabajar con Python bajo ArcMap es conocer cómo funciona Python con el tema de carga de librerías, etc, etc. Parece un tema menor, pero, cuando empiezas a hacer programas o scripts largos y quieres reutilizar código, la cosa se complica, de ahí la necesidad de configurar para la reutilización de códigos.
En mi caso, quería incluir un módulo con unas cuantas funciones, que estoy desarrollando, y … siempre obtenía el mismo mensaje cuando trabajaba desde Python en ArcMap: “No module name ….”
La solución vino gracias a esta página:
Yo elegí la opción 2 para Windows, y consiste en crear un fichero de texto con el listado de directorios a incluir donde cargar “módulos”, y se guarda con extension .pth. Ese fichero hay que copiarlo en el directorio de “site-packages”, pero … ¿dónde está esa ubicación?
Preparamos el fichero de ejemplo, con una ruta a incluir donde están mis módulos:
Localizando el directorio site-packages
Para localizar la ruta, accedemos desde ArcMap a Python, e importamos el módulo “sys”, y ponemos lo siguiente:
for i in sys.path:
print i
El resultado es el siguiente:
Ya tenemos la ruta, que en mi caso es c:\Python26\ArcGIS10.0\lib\site-packages
Ahora, cerramos ArcMap y volvemos a abrirlo, y consultamos los directorios incluidos en Sys.path. Observamos al final un directorio, que es el del fichero incluido en el fichero .pth creado.
Espero os sea de utilidad.