I'm about to start a new job where the coding practices are heavily centered around TDD and refactoring, and whose primary development language is Python. I come from the Java world, and have been a confident user of Eclipse for a good, long time. When not working in Java, I use emacs.
I'm looking for an IDE for Python that will give me a lot of the capabilities I've grown used to with Eclipse, not only for refactoring but in terms of code completion, project management, SCM integration (currently CVS, but likely to switch to git one of these days) et al.
What IDE should I use?
Python Cloud IDE. One Advice that may seem irrelevant-9 year is a young age.Let your kid explore the world, enjoy life, make friends and learn about life.
Dave Hillierclosed as off-topic by l4mpi, jb., Dismissile, Afzaal Ahmad Zeeshan, LarsTechMay 21 '14 at 14:07
This question appears to be off-topic. The users who voted to close gave this specific reason:
- 'Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.' – l4mpi, jb., Dismissile
22 Answers
Have tried many different (Kate, Eclipse, Scite, Vim, Komodo): each one have some glitches, either limited functions, or slow and unresponsive. Final choice after many years: Emacs + ropemacs + flymake. Rope project file open dialog is extremely quick. Rope refactoring and code assist functions are super helpful. Flymake shows syntax mistakes. Emacs is the most configurable editor. I am very happy with this config. Python related part of config is here: public.halogen-dg.com browser/alex-emacs-settings/configs/cfg_python.el
My 2 pennies, check out PyCharmhttp://www.jetbrains.com/pycharm/
(also multi-platform)
Python Ide For Mac
TimTimI use TextMate for all my Python programming needs. It's not an IDE per se, but it does a lot of stuff that an IDE does (without all the cruft of an IDE). It has syntax highlighting, code folding, integration with various SCMs through the use of additional bundles (I know it supports SVN, Git, Mercurial, Darcs, and probably a few others). It's also quite extensible and customizable (again, through the use of bundles). It also has a basic concept of projects. One place where it doesn't shine, though, is in code completion; some bundles have limited support for code completion, but it's generally not as amazing as that of most language-specific IDEs. Given how awesome TextMate is, though, I don't know sacrificing that. TextMate's definitely made me much more productive.
mipadimipadiPydev for Eclipse, as others have mentioned, is good.
Netbeans has a beta Python plugin that is a little rough around the edges, but could turn into something really cool.
Additionally there is a long list of programming centric text editors for the mac, that may or may not fit your needs.
- Textmate - costs money, people love this program, but I haven't used it enough to see what all the fuss is about.
- Jedit - Java based text editor, has some nice features, but the startup time isn't great (due to Java).
- CarbonEmacs - Decent Emacs port.
- AquaEmacs - Better Emacs port.
- TextWrangler - Lite, free (as in beer) verision of BBEdit.
- BBEdit - The old guard. The defacto editor before Textmate stole its limelight. Expensive.
- Smultron - Very nice editor, the UI is similar to Textmate.
- Idle - Python's own little editor, has some nice features, but also some major problems. I've personally found it too unstable for my usage.
- Sublime Text - This is really sweet text editor that has some surprisingly good Python support.
- Pycharm - Another solid full on IDE for Python.
Eclipse with Pydev works best for me on any platform.
ismailismailI really enjoy using PyCharm. http://www.jetbrains.com/pycharm/
I usually use either komodo edit or aquamacs with ropemacs. Although I should warn you, IDE features won't be what you're used to if you're coming from a Java or C# background. I personally find that powerful IDEs get in my way more than they help.
UPDATE: I should also point out that if you have the money Komodo IDE is worth it. It's the paid version of Komodo Edit.
Jason BakerJason BakerI like Spyder, it has many tools, such as profiling, intelligent indentation helper and a good autocompletion support
linellolinelloIf you have a budget for your IDE, you should give Wingware Professional a try, see wingware.com .
Alex MartelliAlex MartelliI've used WingIDE and have been very happy. Intellisense is pretty good, some other things are a bit wacky but overall it's a very productive tool
jeanjeanIf you are looking for an interactive environment and not needing to code modules, I would suggest IPython. Though this is developed with scientists/statisticians in mind, it will run just as well without any of the scientific packages installed. The features are powerful, with code completion, integrated help, integrated debugging, etc., and it functions as a notebook with Markdown and MathJax integration. By far the best choice for those that need powerful features without wishing to load megabytes of GUI into RAM--since it is browser based, it is used in your always loaded chrome/safari instance. ;-)
DallasDallasEclipse PyDev plugin. Picasa photo editor download for mac.
jbaskoBest Python Editor For Mac
jbaskosince you are familiar with Eclipse maybe you are interested in Pydev
KonstantinosKonstantinosPython support on netbeans is surprisingly good, and comes with most of the features you're looking for.
TextMate or Panic's Coda. NetBeans works very well, if you want a full-blown kitchen sink IDE.
I've searched on Google for an app like this for a while, and I've found only options with heavy and ugly interfaces.
Then I opened Mac App Store and found CodeRunner. Very nice and clean interface. Support many languages like Python, Lua, Perl, Ruby, Javascript, etc. The price is U$10, but it's worth it!
Jan K. S.Jan K. S.'Which editor/IDE for ..?' is a longstanding way to start a 'My dog is too prettier than yours!' slapfest. Nowadays most editors from vim
upwards can be used, there are multiple good alternatives, and even IDEs that started as C or Java tools work pretty well with Python and other dynamic languages.
That said, having tried a bunch of IDEs (Eclipse, NetBeans, XCode, Komodo, PyCharm, ..), I am a fan of ActiveState's Komodo IDE. I use it on Mac OS X primarily, though I've used it for years on Windows as well. The one license follows you to any platform.
Komodo is well-integrated with popular ActiveState builds of the languages themselves (esp. for Windows), works well with the fabulous (and Pythonic) Mercurial change management system (among others), and has good-to-excellent abilities for core tasks like code editing, syntax coloring, code completion, real-time syntax checking, and visual debugging. It is a little weak when it comes to pre-integrated refactoring and code-check tools (e.g. rope, pylint), but it is extensible and has a good facility for integrating external and custom tools.
Some of the things I like about Komodo go beyond the write-run-debug loop. ActiveState has long supported the development community (e.g. with free language builds, package repositories, a recipes site, ..), since before dynamic languages were the trend. The base Komodo Edit editor is free and open source, an extension of Mozilla's Firefox technologies. And Komodo is multi-lingual. I never end up doing just Python, just Perl, or just whatever. Komodo works with the core language (Python, Perl, Ruby, PHP, JavaScript) alongside supporting languages (XML, XSLT, SQL, X/HTML, CSS), non-dynamic languages (Java, C, etc.), and helpers (Makefiles, INI and config files, shell scripts, custom little languages, etc.) Others can do that too, but Komodo puts them all in once place, ready to go. It's a Swiss Army Knife for dynamic languages. (This is contra PyCharm, e.g., which is great itself, but I'd need like a half-dozen of JetBrains' individual IDEs to cover all the things I do).
Komodo IDE is by no means perfect, and editors/IDEs are the ultimate YMMV choice. But I am regularly delighted to use it, and every year I re-up my support subscription quite happily. Indeed, I just remembered! That's coming up this month. Credit card: Out. I have no commercial connection to ActiveState--just a happy customer.
Jonathan EuniceJonathan EuniceYou might want to look into Eclim, an Eclipse server that allows you to use Eclipse functionality from within your favorite text editor. For python-related functionality, it uses Rope, PyFlakes, and PyLint under the hood.
mindthiefmindthiefI've been using an Evaluation copy of Sublime Text
. What's good is it doesn't really expire.
It's been good so far and was really easy to get started with.
Sagar HatekarSagar HatekarI may be a little late for this, but I would recommend Aptana Studio 3.x . Its a based on eclipse and has everything ready-to-go for python
. It has very good support for DJango, HTML5 and JQuery
. For me its a perfect web-development tool. I do HTML5 and Android
development too, this way I do not need to keep switching different IDE's. It my all-in-one solution.
Note: you need a good amount of RAM for this to be snazzy !! 4+ GB is awesome !!
FreakyuserVisual Studio Code + Official Python Plugin
Here you see an overview of its current Python features:
Just to stress, I am referring to the editing toolbar that appears in the visual basic development window. This is strange as I am using identical software (Office 365 Excel version 15.18) on both machines which are both Mac yet on the one the toolbar is visible but on the other it is not. Vba editor for mac.
Chocolat
It's lightweight and offers Code Completion. Costs money.
EDIT:Apparently Chocolat was an interesting option in 2013 but since then many others came up and development stalled. Nowadays I recommend Visual Studio Code + Python Plugin.
BijanBijan