在ArcMap的Python窗口中执行脚本?


10

我一直在用文本编辑器编写Python,所以我有一个Python脚本script.py。我仍在开发它,所以还不想将其放入工具箱中,目前这意味着将其从文本编辑器复制并粘贴到ArcGIS Desktop中的Python窗口中。

有没有可以从ArcGIS Python窗口调用它的命令?

类似于以下内容:

run script.py

它应该存在似乎是合乎逻辑的,但也许不存在。


您是在文本编辑器中构建脚本吗?获取免费的pyscripter ide,这将是您将要做的最好的事情!
Hornbydd

Answers:



4

我不确定您的经验水平,但是在深入之前,您将需要学习一些Python最佳实践。这将是更地道,或“ Python化 ”,以模块化你的代码函数 / import你的模块,并调用一个或多个功能/班。

如果要进行更改并以交互方式测试已导入的模块,则可以使用reload内置功能。

使用该if __name__ == '__main__'技巧可以保护脚本的主过程(除导入,函数/类声明以及某些模块级变量声明以外的所有过程)在导入模块时自动运行,并且仅在直接运行脚本时(例如从命令提示符或通过ArcToolbox。

然后,您只需调用相关的类/函数即可测试模块的特定部分。


1
然后,您必须处理reload()Python中的模块缓存等功能和所有麻烦。如果您要在文本编辑器中反复编写一些小脚本,这有点过头了。
杰森·谢里尔

1
reload只要不使用from module import x或,我就没有任何问题from module import *
blah238
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.