Home > Article > Backend Development > Choose a Python IDE that suits you
Overview
"If you want to do your job well, you must first sharpen your tools." If Programming is the craft of the programmer, then the IDE is the programmer It's a meal guy.
The full name of IDE is Integration Development Environment (Integrated Development Environment), which generally takes the codeeditor as the core and includes a series of peripheral components and ancillary functions. The most important thing about an excellent IDE is that in addition to ordinary text editing, it provides various quick editing functions for specific languages, allowing programmers to browse, enter, and modify code as quickly, comfortably, and clearly as possible . For a modern IDE, syntax coloring, error prompts, code folding, code completion, code block positioning, refactoring, and
debugger, version control system (VCS) The integration and so on are all important functions. Customizable frameworks, represented by plug-ins and extension systems, are another popular trend in modern IDEs. text editor combined with independent debuggers, interactive command lines and other external gadgets is another development method. Due to the simplicity ofPython itself, this approach is particularly suitable when writing small code snippets and learning
through example code.Commonly used IDEsIntroduction
Here is a brief introduction to some of the most popular IDEs among Python programmers. Every common distribution of Python has a built-in IDE. Although their functions are generally not powerful and complete, their simplicity and ease of use are the biggest advantage. For beginners, they are also the best choice to get started, allowing you to focus more on the language itself without being distracted by complicated IDEs.IDLE
IDLE is a simple and compact IDE built into the Python standard distribution. It includes basic components such as an interactive command line, editor, and debugger. It is enough Suitable for most simple applications. IDLE is written in pure Python based on Tkinter. The original author is Guido van Rossum, the father of Python himself.PythonWin
PythonWin is part of the Python Win32 Extensions (semi-official pythonfor
win32 enhancement package) and is also included in ActivePython windows In release version. As its name says, it is only for win32 platform.Overall, PythonWin is an enhanced version of IDLE, especially in terms of ease of use (just like the style of windows itself). In addition to ease of use and stability, (simple) code completion and a more powerful debugger are clear advantages over IDLE.
MacPythonIDE is the IDE built into the Mac OS distribution of Python. It can be regarded as the Mac counterpart of PythonWin. It was written by Guido's brother Just van Rossum. .Emacs and Vim
Emacs and Vim claim to be the most powerful (and second most powerful) text editor on the planet, and for many programmers The only (three?) choice for universal IDE. Compared with similar general-purpose text editors such as UltraEdit, Emacs and Vim can build more complete and convenient IDEs due to their powerful extension functions.*
Emacs -- Introduction to Emacs and python-mode* Emacs23 -- The latest version of Emacs, fully supporting unicode, currently for development Middle branch
* Vim -- Recommended tips for using the Vim general editing environment
* PyIDEguider, VimPython, VimPythonTDD -- Several introductions in the community are conducted in the Vim environment Python development article
Although it can be said that mastering both can benefit you for life, the learning curve is relatively steep. Due to historical reasons, their design concepts are based on a pure ascii character environment. GUI is relatively not the focus of support. Only by using a large number of shortcut keys can the greatest convenience be brought. For beginners, Vim is relatively simpler, but the GUI of Emacs is closer to the habits of general editors.
Eclipse + PyDev Eclipse is a new generation of excellent general-purpose IDE. Although it is developed based on Java technology, it has excellent
Architecturemakes it as scalable as Emacs and Vim, and has now become the favorite Swiss Army Knife of many programmers.
*Eclipse -- Instructions for using the Eclipse integrated development environment, briefly introducing the basic knowledge of Eclipse plug-in development
PyDev is the most mature and complete Python development plug-in on Eclipse , and is still under active development. In addition to the basic functions provided by the Eclipse platform, PyDev's code completion, syntax error checking, debugger, refactoring and other functions are quite excellent. It can be said that it is the most powerful among open source products. Many The thoughtful little functions are also in line with editing habits and are quite easy to use. Speed and resource usage are fatal injuries, and it is difficult to run on low-configuration machines.
UliPadUliPad is an IDE developed by limodou, a well-known domestic pythoner and a core member of the PythonCN community.
SPE (Stani's Python Editor)
A very distinctive lightweight python IDE with comprehensive functions yet compact and lightweight, especially suitable for writing small scripts . The UML class diagram that generates code in real time is a unique feature of this company. In addition, it also pays special attention to the integration with external tools. For example, it integrates wxGlade as a WYSIWYG GUI development environment, Winpdb as a debugger, and even integrates with the 3D modeling tool Blender.
SPE does not have the concept of managing Project, which makes it inconvenient to develop projects composed of multiple files and directories. In addition, the interface design is relatively not detailed enough, which can be regarded as a flaw
Boa ConstructorAn IDE designed for rapid development of GUI programs based on wxPython, supporting "what you see" The drag-and-drop development of
controlsis what you get, which is called Delphi in the Python world.
was once selected as "Project of the Month" by sourceforge, but the development speed has tended to be slow recently.
WingIDEThe commercial products developed by Wingware are generally the most powerful and professional Python IDE. Open source projects can apply for a free license.
The biggest disadvantage is the same as PyDev, which is slower and takes up more resources.
Komodo
Another excellent commercial product, developed by ActiveState, is a general-purpose scripting language IDE that supports
JavaScript# in addition to Python. ##,perl
, PHP, ruby, tcl and other languages .
Textmate Textmate is a Cocoa native program for the Mac OSX platform, similar to UltraEdit. Known for its flexible Bundles and Code Snippets, it supports most scripting languages. The entire Rails development team
Teams all use this Editor. Similar to Emacs/vi, you need to cooperate with ctags to analyze the python code structure, and you can easily perform functions such as unittest. It should be noted that it has special support for Django's model and
template, as well as Zope.
Scribes
"Scribe"──Poor man's TextMate?
Intype
Under Windows Textmate
PyScripter
Python IDE developed by Delphi, only windows version.
Tools other than IDE
Interactive command line (interactive console)
IPython
IPython homepage: ipython.scipy.org/
Debugger (Debugger)
Winpdb
Winpdb's homepage: www.digitalpeers.com/pythondebugger/
OtherEditors that support Python
Leo
Development tools based on the new Literate Programming (literary programming) concept. For a detailed introduction, please see: LeoEnvironment
Leo’s homepage: webpages.charter.net/edreamleo/front.html
Bluefish
Bluefish is often thought of as a web page editor similar to Homesite, but in fact it is much more than that. It should be a general text editor that supports C, PHP, Python,
Ruby, Perl, Java, Shell, Tcl and many other programming languages, and supports syntax highlighting, automatic Line breaks, automatic closing of HTML tags, etc., and multiple documents can be edited at the same time.
Bluefish is certainly not a Python IDE tool, but if you are doing web-related development (DjanGo, TurboGears, etc.), it is obviously very convenient to use it to write programs. Moreover,
Bluefish is quite friendly and can be used basically without having to learn it. It allows novices like me to transfer their energy to learning Python as soon as possible.
Bluefish official website bluefish.openoffice.nl/index.html can currently run on most UNIX-like operating systems.
Discuss
Comprehensive comparison
swordsp’s personal suggestion:
Beginners prefer IDLE / PythonWin / MacPython
Emacs / Vim / Eclipse+PyDev is a powerful and versatile solution. It depends on which environment you are more familiar with. If you have no foundation, it is more recommended. Eclipse+PyDev.
SPE is the most comprehensive among the simple IDEs implemented in pure Python, and is very convenient when writing small scripts.
Boa’s strength lies in rapid GUI development based on wxPython.
If you have the conditions to choose commercial tools, WingIDE or Komodo are both excellent products.
【Related recommendations】
1. Special recommendation:"php Programmer Toolbox" V0.1 version download
3. Eclipse+Pydev installation tutorial
4. Introducing 10 commonly used Python IDEs
The above is the detailed content of Choose a Python IDE that suits you. For more information, please follow other related articles on the PHP Chinese website!