I am looking to develop arcpy scripts (ArcGIS 10.1) in an IDE that is more "integrated" than Pythonwin. I would like an experience that is analagous to programming ArcObjects in Visual Studio C#/VB.NET (which I've done a bit when arcpy did not offer enough low level control). When developing ArcObjects with C#, there there were templates ready, classes in seperate windows that I could explore (very good way to remember tools available!), and code completion for everything. I have not yet found any examples/screen shots/extended discussion of this type of setup. There is this post, but it focuses on effective arcpy debugging (which I definitly also need to learn more about).

Is it possible to setup Visual Studio 2010/SPE/Wing/ any other IDE that will, out of the box, make the arcpy development experience much more like the experience of programming ArcObjects using C#/VB.NET?

  • Similar or duplicate question (code complete): Is there a way to code-complete arcpy scripts using an external editor?. Check out my comments for PyScripter under the answer by @VietThanh Le. – RyanKDalton Oct 26 '12 at 19:59
  • thanks for pointing to this - when I see post like that I am not sure if the answers mean that the Python IDE is able to do code completion with Python, or if there is code completion for arcpy specifically (or is this just always implied?) I havn't tried any of these IDEs and wanted to check on this point before I devoted time to any particular solution. – youzer Oct 26 '12 at 20:04
  • 1
    I don't think there is anything unique about arcpy in this regard. – blah238 Oct 26 '12 at 20:18
  • 1
    Take a look at Which Python IDE can run my script line-by-line? question as well. – radek Oct 26 '12 at 20:33

If you want a good, free Python-centric IDE, check out PyScripter. I have also seen people swear by Eclipse with PyDev.

If you want to use Visual Studio for developing with Python check out Python Tools for Visual Studio.

Of course, there are major differences between developing with C#/VB.NET and Python because the former are compiled, [mostly] statically-typed languages, while Python is an interpreted language with duck typing so there will be some limitations as to what can be done with things like automatic renaming/refactoring, Intellisense, etc.

| improve this answer | |
  • blah238, I am wondering how available Python IDEs can integrate with code specific to arcpy. Does everything just integrate out of the box or are there tricks and additional downloads that are needed for the IDEs you mention to "see" all available classes, ahve all code completion work etc? I have just never found this point stated explicitly anywhere. – youzer Oct 26 '12 at 20:00
  • 1
    In PyScripter, as long as you have an import statement for the module with the classes you are looking for, it should be able to code-complete them. I seem to remember there being an extra setup step in PTVS to get code completion working but that was a while ago. I encourage you to try it yourself as it is free. – blah238 Oct 26 '12 at 20:16
  • Anyone know about the current status of PyScripter development? Seems like it's not in dev. If not, is there something similar in current dev that anyone knows of? – ndimhypervol Dec 18 '12 at 20:13
  • pyscripter is very good, has code completion and debugging allows you to set break points with conditions. – Hornbydd Aug 29 '13 at 18:20

I would recomend PyCharm.

PyCharm is the ultimate tool for developing Python applications.

Why is PyCharm so good?

  • You can setup which environment you are working.
  • Code completion
  • Killer debugger
  • Python metrics and refactoring

My company and I use PyCharm to develop mostly Django applications and QGis plugins, but we are starting to develop some ArcPy with it.

The price tag is around 100 USD and it's great product. I highly recomend it.

| improve this answer | |

If you are using Visual Studio, why not use the Python Tools for Visual Studio

We also use it, and I have to say, that the integration is really great, especially for large python projects (PyPy, Django, and so on). Also code completion works for the arcpy site package.

After using it for a while now, I really think Visual Studio - if you can pay the price ;) - is definitely the best IDE for Python development, but especially for small scripting tasks in ArcGIS it also brings in a lot of overhead (create a solution, configuration, blahblah). So when I have to write a small arcpy script, I still very often just rely on IDLE.

I think you just have to give it a try...

| improve this answer | |
  • I mentioned PTVS in my answer, and also you don't need a paid version of VS, you can use the VS Shell. – blah238 Aug 29 '13 at 18:22
  • sorry, didn't see, that you already mentioned it. And nice to know, that it also works with the Express Edition, so at least I still learned something. – Jürgen Zornig Aug 30 '13 at 7:22
  • 1
    Not Express Edition. Look for Visual Studio Shell. – blah238 Aug 30 '13 at 15:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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