tags:

views:

861

answers:

10

As I look at what features I want in a programming language, I notice that many of them are more related to the development environment then the actual language, the best one I have encountered so far being Visual Studio.

As I am considering Python development in the future, I would like to know of IDE's that could represent comparable features to that of Visual Studio. Mainly:

  • Intellesense
  • Highlighting of errors (primarily syntax errors)
  • Step-by-step debugging w/ immediate window.

And likely others, but these are the main three. The variant of Python is unimportant, as long as it is relatively compatible with the official implementation. (That means IronPython is out.)

Also, I don't want to use Eclipse. I've had a great deal of difficulty configuring Eclipse in the past that I do not wish to go through again.

Clarification on why I don't want Eclipse: I have Eclipse for PHP installed. This is useful for PHP, but means I can't install another Eclipse on the same platform.

A: 

You might try Eric. I haven't tried it in a while, but I believe it has all those features.

Kaleb Pederson
Doesn't install under Windows.
MiffTheFox
It does run in Windows, but I agree that it's sad that there isn't an installer available for it.
Kaleb Pederson
A: 

If not eclipse then netbeans

Vishal
+2  A: 

I like the Python support that Netbeans has.

It has all of the features that you are looking for.

As a side note: Most IDEs have a learning curve that you have to get over in order to truly take advantage the power they provide. It is worth putting in the effort up front to learn how to use and configure your IDE(s) well. That being said, I am not the worlds biggest eclipse fan, and I agree it can be difficult to work with if you are not used to it.

instanceofTom
The #1 config issue I have is because I initally downloaded a build of Eclipse ment for PHP development, not Java.
MiffTheFox
+5  A: 

I recommend Wing IDE - not sure if the feature you want are complete in the free version, but it can't hurt to download and try!

Alex Martelli
+1 for Wing IDE,free version(WingIDE 101) hasn't code auto completion. I think Wing IDE Professional has all there features that original poster wanted.http://www.wingware.com/wingide/features . Professional version is not free, but Visual Studio is not good at free too.
sunqiang
WingIDE offers a free professional license to open source developers. I use it for my project and love it.
Jeff
+4  A: 

Sorry, but there is no IDE for Python that can stand up to Visual Studio on Windows. Microsoft has spent a lot of time and money on Visual Studio and it really is the best in the industry (for an IDE). It's also hard to offer good intellisense support for Python because of its dynamic nature.

I personally would recommend Komodo for an IDE but I always feel like there should be something better available.

Lance McNearney
agreed. Folks will say PyDev/Eclipse is just as good, but it is not even close. PyDev is what I end up using, but it is barely adequate compared to the Java development environment for eclipse.
GregS
+5  A: 

I use Pydevbased on Eclipse. Configuration for just python is much simpler than for Java just install pydev.

See Stackoverflow for the big thread

Mark
A: 

Check out http://pythonide.blogspot.com/

Stani's python editor is a REALLY complete suite.

Richo
+2  A: 

I really like Komodo IDE. http://www.activestate.com/komodo/features/. Again not free. Worth it.

Has

  • Multi-language Support
  • Autocomplete and Call Tips
  • Multi-language File Support
  • Standard Editing Features
  • Syntax Checking
  • Syntax Coloring
  • Abbreviations
  • Vi Emulation
  • Emacs Keybindings
  • HTML Preview
  • View HTML Source
  • Multilingual Input Method Editor (IME) support
  • Code Snippets
  • Code Folding
  • Multi-document Editing
  • History
  • Search Highlighting
  • Editor Hyperlinking
  • CSS Color Popup
  • Primary Language Preferences
  • Sub-language Background Colors

It also has a pretty strong Multi-language Graphical Debugger that reminds me a bit of Dev Studio. Likewise, if you ever move away from windows, Komodo will run there as well.

One of my favorite features is remote debugging where I was actually able to hit a breakpoint from a remote server in Dallas (I am in Chicago) by mapping ports and such. I also like the VI mode because that is my favorite text editor.

Good Luck, Brian

brianray
I've had good results with Komodo as a python IDE. Especially the remote debugging capability.
I'm also a fan - the major thing missing for me is Python 3 support.
Scott Griffiths
+1  A: 

Also, I don't want to use Eclipse. I've had a great deal of difficulty configuring Eclipse in the past that I do not wish to go through again.

Eclipse now has easier dependency resolution so that installing new components are much easier than before.

Clarification on why I don't want Eclipse: I have Eclipse for PHP installed. This is useful for PHP, but means I can't install another Eclipse on the same platform.

You don't need to install two copies of Eclipse to use another environment. Eclipse is designed so that you can do many things with a single installation, it uses plug-ins to add functionality.

Is it possible to install two versions of Eclipse at the same time then? (One for Pydev, the other one for PHP)

Having Php and Pydev is easy to manage due to Eclipse Perspectives. Eclipse knows to switch automatically between the tools you want to use, you just need to make sure you tell Eclipse what type of project you are working on when you create a new project or import an existing one.

I would recommend downloading the Java EE edition and then installing the add-ons you want. Installing Pydev is very straight forward, you simply:

  1. Go to Help->Install New Software
  2. Click the "add" button near the top.
  3. Give a name, like "Pydev" in the name field. Paste this URL to the field labeled "Location:": http://pydev.org/updates
  4. After pressing Okay you check off the two boxes that appear with Pydev in the name
  5. Click "Next" Follow the wizard instructions!

To install Php, simply follow these instructions: http://wiki.eclipse.org/PDT/Installation#From_Update_Site

pokstad
I'll have to uninstall PHP!Eclipse then?
MiffTheFox
No, I only recommend installing the Java EE edition because it has many prereq's for other add-ons already included. If you install Pydev it might have to install more items (won't matter since it does all the work for you anyway). What version of Eclipse are you using? Europa, Ganymede, Galileo, Helios?
pokstad
@pokstad - Ganymede. And can't I not install the Java EE edition without uninstalling any existing Elcipse installation?
MiffTheFox
@MiffTheFox - You can install another Eclipse without removing the old one. Eclipse just downloads as a zipped folder, you can put that zipped folder where ever you want. If you want two copies of Eclipse then just save the newer version in a different location. Galileo is the newest version and I highly recommend it because of the ease of installing add-ons. If you use the PHP version more then just download the Galileo PHP version and then install Pydev it (Java EE isn't really needed, I just like it): http://www.eclipse.org/downloads/
pokstad
+2  A: 

I would recommend PyCharm. It is really integrated nicely with django as well. So far I haven't seen anything like it, not even Eclipse with PyDev and Netbeans. What I really like about PyCharm is you can view the Python sources that you have in your PYTHONPATH. PyCharm is based on the well renown IntelliJ IDEA, I can say that so far it is comparable to Visual Studio.

jpartogi