Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have been scripting in Python for ArcGIS 10, and so far I have just been using Notepad++.

I like how the Python command line interface code-completes arcpy functionality for you, showing you your options, and I was wondering if there is a way to add this feature to an external editor.

share|improve this question
up vote 9 down vote accepted

I recommend WingWare IDE. It seems to have the best debugging and code completion out of the Python IDEs I've seen. One of the motivating factors for arcpy in 10.0 was that it would have better code completion than arcgisscripting offered.

share|improve this answer

PyScripter is my choice. It's free and open source and a lightweight and quick install. There is even a registry-free installation that doesn't require admin rights for installation.

share|improve this answer
Code completion seems to work for the Arc10 arcpy module, but I was not able to enable it for Arc 9.x. For future readers, to enable arcpy (Arc10) code-completion in PyScripter, go to Tools--> Options--> IDE Options--> and add "arcpy" to the "special packages" line of Code Completion section. NOTE: code-completion is case sensitive, so arcpy.copyfeatures will not code-complete, but arcpy.CopyFeatures will code-complete (note the capital "C" and "F". – RyanDalton Sep 23 '11 at 15:31
An additional note on code completion... you can disable case sensitivity by unchecking "case sensitive" in the same location as noted above. – RyanDalton Jan 19 '12 at 17:04
Also, the Ctrl-Shift-Space hotkey will bring up the code completion "call tip" if you are for example in the middle of writing a function parameter list and you did something to close it. – blah238 Feb 17 '13 at 19:57

I'd try Eclipse using the Pydev extensions. I know it didn't do code completion very well with the python geoprocessor in 9.3, and I haven't got 10 to play around with yet, but even without it, it is a much nicer editor with some very cool features.

share|improve this answer
Have finally got down to playing with 10 - code complete does work w. Eclipse. Good luck to anyone else trying it out! – om_henners Oct 16 '10 at 14:38

MS recently released Python Tools for Visual Studio - once you follow a few steps outlined here: Visual Studio will provide you with intellisense, method signatures, syntax highlighting, a REPL and a debugger.

share|improve this answer
+1! Visual Studio 2010 with PyTools is a fantastic Python IDE. It even integrates with the Visual Studio Integrated Shell for a completely free setup even without any existing Microsoft licenses. – Philip Jun 3 '11 at 16:59
I use Python Tools for Visual Studio too - moved here from PythonWin several years ago and have never gone back – Midavalo Apr 16 at 2:34

Code completion is a feature of the editor, this stackoverflow post has a listing of editors which support code completion. In Notepad++, you can enable autocompletion as a preference.

share|improve this answer
Thanks, that was really helpful. I have autocompletion enabled, but it is only completing core python code. Is it possible to have it autocomplete arcpy functions? Thanks for the help, I am fairly new to this. – Tanner Jul 30 '10 at 19:28

It seems to be poorly known that IDLE supports autocompletion reliably too.

If you are using it with ArcPy always run the import arcpy part of the script once so that your script window becomes aware of that site-package.

However, if you do not see autocompletion kick in then the trick is to use "Ctrl + Spacebar" to trigger it.

I have seen this mentioned here at Getting ArcPy autocomplete to work in IDLE? and on StackOverflow at Python IDLE. Auto-complete/Show completions not working but it is no doubt in the IDLE documentation somewhere too.

share|improve this answer

Active State komodo works fine for me. I just added a reference to the arcpy directory in the preferences. It has good debugging and a good interface. Autocompletion works for arcpy and my own libraries.

share|improve this answer
Hi Neil, can you better describe how? Im trying to add it on preferences as described but not having luck finding the .xml for code intelli inside arcpy folder. – Jorge Vidinha May 13 '13 at 22:36

I use PyCharm for a period and and it works great for me.

share|improve this answer

We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.

Since most answers are basically just a 'this is my favorite editor', I'll add this link to a poll on GeoNet. Out of 130 votes so far, the results are:

  1. PyScripter 51 votes
  2. PyCharm 17
  3. Wing 10
  4. PTVS 8
  5. Komodo 5
  6. NetBeans 1
  7. PyStudio 1
  8. Spyder 1
  9. KDevelop 0

    (Other 36)

Here's the poll.

share|improve this answer
While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. – John Barça Mar 4 '15 at 15:06
This does not provide an answer to the question. To critique or request clarification from an author, leave a comment below their post. – Mark C Mar 4 '15 at 17:48
@Mark You may be right, but then again, none of the 'answers' so far are answers to the actual question, i.e. 'Is there a way to add code completion to an external editor' (one mentions how to to it in NP++, but not for arcpy). Instead, most are just a recommendation for someones favorite Python editor. I thought it would be helpful to add a summary of all editors used by ArcGIS users. – Berend Mar 5 '15 at 7:45
I've completely rewritten my 'answer' just now. – Berend Mar 5 '15 at 7:53

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.