views:

277

answers:

6

I'm looking for a Python IDE that can help me easily locate and manage and use the libraries on my system (Ubuntu). Specifically Twisted.

Code completion is important including the symbols I import.

(I've so far had a look at PyDev as well as OpenKomodo, but while both offer code completion for default Python concepts, I wasn't able to get either to import Twisted into my project and was thus getting reference errors.)

Usual disclaimer: I don't like EMACS or vi, please, nothing regarding those.

+3  A: 

Using Wing IDE with Twisted discusses how to debug twisted using their IDE - although unfortunately WingWare is not free.

Are you sure you have given PyDev a fair look? It seems to be the most popular Python IDE, and I have always had good experiences with it in the past.

Justin Ethier
PyDev is good and fast, but it requires too much management of the project file. Really, aren't python libraries "just supposed to work"(tm)?I was getting symbol errors and it seems like PyDev hasn't made itself a natural fit yet. I'm sure it will eventually, but right out of the box, the netbeans Python preview has impressed me.
Omega
@Omega - You might need to set up your interpreter pythonpath in eclipse -- Window>Preferences>Pydev>Interpreter-Python>Libraries. Managing individual project paths should only be necessary if you want to reference libraries that aren't in your default pythonpath, or if you want to reference dev versions of a library.
Brendan Abel
+2  A: 

I've just downloaded the preview of netbeans and it seems to have done quite well so far.

It has detected inherited methods & properties. I haven't had to add a single library reference in my project, so this seems to be the most fluid so far.

Omega
netbeans is owned by Sun who are now owned by Oracle. Oracle has said that netbeans support for dynamic languages will be "from the community" i.e. not from Oracle. I'd think twice about learning to use netbeans when its python support is so uncertain.
blokeley
That's a shame, python/netbeans looked promising! Do you have any more information, or references? Are there other projects Oracle has effectively canceled?
Justin Ethier
Yeah, I've become somewhat leery of anything Oracle has come to own at this point. Very sound reasoning - even so far as wanting an IDE that doesn't depend on Java.
Omega
In this webcast http://oracle.com.edgesuite.net/ivt/4000/8104/9236/12627/lobby_external_flash_clean_480x360/default.htm, Oracle basically says it is not going to support netbeans+python, which is a pity because I thought it was getting very good indeed and had even started using it in preference to pydev. Fast forward to about 11:55 to hear about netbeans and dynamic languages.
blokeley
Oracle is going to develop netbeans, but only for Java. More details are at http://www.oracle.com/events/productstrategy/index.html#software
blokeley
+3  A: 

eclipse + pydev seems to work well for me.

Just remember to right-click on the project and select Properties and make sure that your libraries are on the path. Sometimes this doesn't happen for easy_installed libraries.

blokeley
+1 for eclipse + pydev. Has all the standard python IDE features like syntax highlighting, etc. But also has a working debugger, seamless integration with Subversion, and some other cool features using the mylyn extensions.
Brendan Abel
I guess that's the problem for me with pydev really. I wasn't really sure how to properly add libraries or where to go looking for twisted.
Omega
A: 

Like Eclipse is primarily a Java IDE written in Java, you could try Eric which is a Python IDE written in Python. I have had some issues with it in the past but I really enjoy the ability to stop your code at a breakpoint and have access to the python console to manipulate your data or even to inject new functions. PyDev could really use a console like that.

whatnick
A: 

JetBrains PyCharm is a very interesting newcomer in the Python IDE space. Currently in preview, it already surpasses many of the other IDEs in terms of user-friendliness and features.

It features:

  • Code completion of any imported library
  • Good support for unit testing
  • Refactoring
  • Debugging
  • Version control integration

It's built on the same platform as IntelliJ IDEA which is a generally considered one of the best Java IDEs.

I have been using it myself in the last weeks and enjoyed it very much. It is not very buggy (for a preview release), just incomplete.

Frederik
A: 

for a small proyects Scribes. Otherwise Eclipse+pydev.

lctr30