Eu tenho escrito Python no meu editor de texto, então eu tenho um script Python, script.py. Ainda o estou desenvolvendo, por isso não quero colocá-lo na minha caixa de ferramentas e, no momento, isso significa copiá-lo e colá-lo do meu editor de texto para a janela Python no ArcGIS Desktop.
Existe um comando que me permita chamá-lo a partir da janela do ArcGIS Python?
Algo ao longo das linhas de:
run script.py
Parece lógico que deveria existir, mas talvez não.
arcpy
arcmap
python-window
whatahitson
fonte
fonte
Respostas:
Você poderia usar
execfile
.Por exemplo,
fonte
Não tenho certeza do seu nível de experiência, mas antes que você chegue muito longe, você precisará aprender algumas práticas recomendadas em Python. Seria mais idiomático, ou " Pythonic ", modularizar seu código em funções / classes ,
import
seu módulo e chamar uma ou mais funções / classes.Se você deseja fazer alterações e testar interativamente o módulo já importado, pode usar a
reload
função interna.Use o
if __name__ == '__main__'
truque para proteger o procedimento principal do seu script (tudo que não seja importação, declaração de função / classe e talvez algumas declarações de variável no nível do módulo) sejam executados automaticamente ao importar o módulo e somente execute essa lógica ao executar o script diretamente, por exemplo, de um prompt de comando ou por meio do ArcToolbox.Então você pode testar partes específicas do seu módulo, apenas chamando as classes / funções relevantes.
fonte
reload()
função e toda a maldade do cache do módulo e outras coisas no Python. Se você estiver escrevendo iterativamente algum pequeno script em um editor de texto, isso é um pouco exagerado.reload
desde que evite usarfrom module import x
oufrom module import *
.