Python 창과 Python 스크립트 도구의 성능 차이가 있습니까?


9

Python 창에서 Python 스크립트를 실행하는 것과 ArcGIS Desktop 10.0의 도구 상자에서 Python 스크립트 도구로 실행하는 것 사이의 성능 차이가 있습니까?

때때로 ArcPy를 사용해야하고 ArcGIS를 실행해야합니다. 최근 경험에 따르면 도구 상자와 파이썬 창에서 동일한 스크립트를 실행할 수 있으며 도구 상자가 조금 더 빠른 것 같습니다.


독립형 스크립트를 사용하는 경우 : Arcmap을 열 필요가 없으므로 시간과 리소스 (CPU 및 메모리)를 절약 할 수 있습니다. 지금은 괜찮은 컴퓨터를 살 여유가 없습니다.
gm70560

도구 상자는 CURRENT 맵 문서를 건드릴 수 없습니다. python 창에서 arcpy.mapping.MapDocument ( "CURRENT")를 사용할 수 있지만 도구에서 특정 맵으로 무엇이든하려면 mxd를 가리켜 야합니다.
eseglem

3
@eseglem, CURRENT프로세스 내에서 실행되는 한 키워드 를 사용하여 스크립트 도구에서 현재지도 문서에 액세스 할 수 있어야합니다 .
blah238

1
@ gm70560 독립형 스크립트를 실행할 때 시간이 걸리는 일종의 Arcmap 인스턴스를 만들어야합니다. 이미 시작된 파이썬 창 내
Matthew Snape

2
import arcpy독립형 스크립트 (또는 툴박스의 일부)로 오랜 시간이 걸리지 만 ArcMap에서는 이미 파이썬 창의 네임 스페이스의 일부입니다.
Michael Markieta

답변:


5

Michael Markieta와 gm70560이 모두 맞습니다. 대규모 지오 프로세싱 작업을 실행하는 경우 독립 실행 형 파이썬 스크립트를 통해 수행합니다. IDE가 아닌 명령 줄에서 시작하는 것이 좋습니다. 이런 종류의 작업에는 ArcPy를 가져 오는 오버 헤드가 그만한 가치가 있습니다.

그러나 작은 작업, 특히 사용자 입력이 필요한 작업은 일반적으로 ArcMap에서 더 빠르고 편리합니다. ArcMap 자체를 시작하는 오버 헤드와 연결 시간이 약간 길어질 목적으로 ArcMap을 열어야하는 경우가 아니라면 MXD에서 참조 된 모든 데이터베이스 (네트워크 연결이 느린 경우 지루할 수 있음)

마찬가지로 작은 작업이라도 일괄 처리는 ArcMap의 도구 상자를 사용하는 것보다 독립 실행 형 Python 스크립트에서 더 잘 수행됩니다. 수입은 한 번만 가져오고 ArcMap 오버 헤드가 없기 때문입니다.

파이썬 스크립트를 통해 많은 자동 지오 프로세싱을 수행 한 후에는 추가 속도와 유연성이 마음에 들기 때문에 기본적으로 독립형 프로세스로 실행하는 것이 좋습니다. 툴박스에서 더 빠르게 실행되는 대부분의 작업은 일반적으로 코드를 작성하지 않고 ModelBuilder에서 실행했을 정도로 작습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.