When comparing Spyder vs IDLE, the Slant community recommends Spyder for most people. In the question“What are the best Python IDEs or editors?” Spyder is ranked 8th while IDLE is ranked 28th. The most important reason people chose Spyder is:
Spyder's autocomplete features are made possible by a library called [rope](https://github.com/python-rope/rope) which gives Spyder powerful autocompletion.
Ranked in these QuestionsQuestion Ranking
Pro Powerful autocompletion
Spyder's autocomplete features are made possible by a library called rope which gives Spyder powerful autocompletion.
Pro Free and open-source
Released under the MIT license.
Pro Graph plotting support
Spyder can plot graphs and provide the list of all variables.
Pro Has cross platform support - Linux, Mac, and even Windows
Spyder (formerly Pydee) has support for all of the major operating platforms - Linux, Mac, and even Windows.
Pro Relatively lightweight
Pro Helps you to use documentation
Pro Intuitive interface
Pro Enables to write consistent code
Pylint integration enables to check the code for PEP8 style guide and detect errors.
Pro Has support for Vim bindings via plugin support
Aside from being an open sourced, actively developed IDE, vim key-binding support is also available. If you remember Pydee - this is it, albeit with a new name.
Pro Good GitHub project
Pro Excellent variable explorer
Dynamic variable explorer with editor and visualizer
Pro Completely Python
Pro Sometimes simple is best
For short scripts, a heavyweight IDE just gets in the way. It's also easier for beginners to understand.
Pro Written in pure Python/tkinter
You can dig in and change how it works.
Pro Included in standard Python distributions
You probably already have it.
It has one.
Con Not beautiful
The default theme is not beautiful. And there are not many themes.
Con The documentation is poor when it comes to debugging
Not a lot of information about debugging is available in the documentation.
Con No Tabbing for Files or Shell instances
Idle's Interactive Python Shell and the Python Text Editor are separate window applications. Many would expect them to be unified together within a single window. To create a python program file, or module, the user first opens Idle (It's Interactive Shell), then the user goes to [File] and [New File] to open the Idle Text Editor. Plus, every time a new python file is opened, a new instance of Idle runs separately. So, there are no tabbed modules. That's clumsy approach that adds the complexity of juggling around many Idle instances.