Я думаю, суть вопроса здесь в том, какие задачи в вашем рабочем процессе на самом деле не зависят от ArcGIS? Очевидные кандидаты включают табличные и растровые операции. Если данные должны начинаться и заканчиваться в GDB или каком-либо другом формате ESRI, то вам необходимо выяснить, как минимизировать стоимость этого переформатирования (т. Е. Минимизировать количество циклов) или даже оправдать его - просто может быть слишком рационализировать дорого. Другая тактика заключается в том, чтобы модифицировать ваш рабочий процесс для более раннего использования удобных для Python моделей данных (например, как скоро вы можете отказаться от векторных полигонов?).
Чтобы повторить @gene, хотя numpy / scipy действительно хороши, не думайте, что это единственные доступные подходы. Вы также можете использовать списки, наборы, словари в качестве альтернативных структур (хотя ссылка @ blah238 довольно ясно говорит о различиях в эффективности), есть также генераторы, итераторы и все другие отличные, быстрые и эффективные инструменты для работы с этими структурами в python. Raymond Hettinger, один из разработчиков Python, имеет все виды отличного общего Python-контента. Это видео является хорошим примером .
Кроме того, чтобы добавить идею @ blah238 о мультиплексной обработке, если вы пишете / выполняете в IPython (а не только в «обычной» среде Python), вы можете использовать их «параллельный» пакет для эксплуатации нескольких ядер. Я не одарён этим, но нахожу его более удобным для новичков, чем мультипроцессорный. Вероятно, на самом деле это просто вопрос личной религии, так что возьмите это с крошкой соли. В этом видео есть хороший обзор об этом, начиная с 2:13:00 . Все видео отлично подходит для IPython в целом.