search
HomeOperation and MaintenanceLinux Operation and MaintenanceWhat development tools do you use for python?

What development tools do you use for python?

Jul 15, 2017 am 11:35 AM
pythonWhatdevelopment tools

Overview

"If you want to do your job well, you must first sharpen your tools." If programming is the programmer's craft, then IDE is the programmer's bread and butter.

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, integration with debugger, version control system (VCS), etc. are all important function. Customizable frameworks represented by plug-ins and extension systems are another popular trend in modern IDEs.

The more functions the IDE has, the better, because more functions often mean greater complexity, which not only distracts the programmer's original energy, but may also cause more errors. As long as the basic functions meet your needs, the IDE that suits your usage habits is the best IDE. A programmer's logic is always to use the most appropriate tool to do the most appropriate thing.

Because of this, compared to a large and comprehensive IDE, using a simple text editor combined with external gadgets such as independent debuggers and interactive command lines is another development method. Due to the simplicity of Python itself, this approach is particularly suitable when writing small code snippets and learning through example code.

Introduction to Commonly Used IDEs

Here is a brief introduction to some of the most popular IDEs among Python programmers.

Built-in IDE

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, which is enough to handle most simple applications. IDLE is written in pure Python based on Tkinter. The original author is Guido van Rossum, the father of Python himself.

http://hkn.eecs.berkeley.edu/~dyoo/python/idle_intro/index.html -- "One Day of IDLE Toying", an introductory article with pictures and texts

http: //hkn.eecs.berkeley.edu/~dyoo/python/idle_intro/IDLE-chinese.htm -- "One Day of IDLE Toying" Chinese version

PythonWin

PythonWin is Python Win32 Extensions (part of the semi-official python for win32 enhancement package) is also included in the Windows distribution of ActivePython. 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 stronger debugger are clear advantages over IDLE.

Download page of Python Win32 Extensions: http://sourceforge.net/projects/pywin32/

Home page of ActivePython: http://www.activestate.com/Products/ActivePython/

MacPython IDE

MacPythonIDE is the IDE built into the Mac OS distribution of Python. It can be regarded as the Mac counterpart of PythonWin, written by Guido's brother Just van Rossum.

Emacs and Vim

Emacs and Vim are known as the most powerful (and second most powerful) text editors on the planet. For many programmers, they are the only universal IDE ( 3?) Choice. 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 a branch under development


Vim -- Recommended tips for using the Vim general editing environment


PyIDEguider, VimPython, VimPythonTDD -- Several introductions in the community are here Articles on Python development in Vim environment

Although mastering both can be said to be a lifelong benefit, 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 an excellent architecture Making it as scalable as Emacs and Vim, it 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 it is still continuing. is 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, and many thoughtful little functions are also very suitable. Editing habits are quite easy to use.

Speed ​​and resource usage are fatal injuries, and it is difficult to run on low-configuration machines.

PyDev -- Introduction to PyDev development environment

Eclipse's homepage: http://www.eclipse.org/

PyDev's homepage: http://pydev.sourceforge .net/

PyDev User Manual: http://www.fabioz.com/pydev/manual_101_root.html (Eng) This introductory manual is used from installation to development process, and is displayed with pictures and texts. It is recommended Everyone uses.

Technical development reference: Python development using Eclipse, PyDev and Ant, http://www-128.ibm.com/developerworks/cn/opensource/os-ecant/index.html

UliPad

UliPad 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 unique lightweight python IDE with comprehensive functions yet compact and lightweight, especially suitable for writing small scripts.

The UML class diagram that generates code instantly 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 considered a flaw.

SPE's homepage: http://stani.be/python/spe/

Boa Constructor

An IDE designed for rapid development of GUI programs based on wxPython. Supports "what you see is what you get" drag-and-drop development of controls, 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.

Boa Constructor's homepage: http://boa-constructor.sourceforge.net/

Eric3

Eric3's homepage: http://www.die-offenbachs. de/detlev/eric3.html

WingIDE

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.

Wingware's homepage: http://wingware.com/

Komodo

Another excellent commercial product, developed by ActiveState Company, is a general-purpose scripting language IDE, in addition to Python, also supports javascript, perl, php, ruby, tcl and other languages.

Komodo’s homepage: http://www.activestate.com/Products/Komodo/

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 uses 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.

Textmate's homepage: http://macromates.com/

Scribes

"Scribe"──Poor man's TextMate?

Intype

Textmate under Windows

PyScripter

A Python IDE developed by Delphi, only has a windows version.

PyScripter's homepage: http://mmm-experts.com/Products.aspx?ProductId=4

Tools other than IDE

Interactive command line (interactive console)

IPython

IPython’s homepage: http://ipython.scipy.org/

Debugger (Debugger)

Winpdb

Winpdb's homepage: http://www.digitalpeers.com/pythondebugger/

Other editors that support Python

Leo

Based on the new Literate Programming( Literary programming) concept development tools, for a detailed introduction, please see: LeoEnvironment

Leo’s homepage: http://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 wrapping, and automatic closing of HTML tags etc., 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 very 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 http://bluefish.openoffice.nl/index.html can currently run on most UNIX-like operating systems.

Discuss

Comprehensive comparison

Beginners’ first choice IDLE / PythonWin / MacPython


##Emacs / Vim / Eclipse+ PyDev It is a powerful and versatile solution, depending on which environment you are more familiar with. If you have no foundation, Eclipse+PyDev is more recommended.


#SPE is the most complete IDE 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 a commercial tool, WingIDE or Komodo are both excellent products.

Other articles comparing Python IDEs:

http://www-128.ibm.com/developerworks/cn/linux/sdk/python/charm-14/index.html

"Charming Python" columnist David Mertz's evaluation article was written in 2001. Many of the contents are too old, but it is still of reference value.

http://spyced.blogspot.com/2005/09/review-of-6-python-ides.html -- review-of-6-python-ides.html

http://spyced.blogspot.com/2006/02/pycon-python-ide-review.html -- pycon-python-ide-review.html

Two newer Python IDE review articles ( The original address requires a proxy to access, and the latter attachment link is a local backup). PyDev, Eric3, Boa Constructor, BlackAdder, Komodo, WingIDE, and SPE were compared respectively.

Source: http://wiki.woodpecker.org.cn/moin/PyIDE

The above are the details of IDEs and other development tools commonly used by Python programmers, please pay attention to php for more Other related articles on the Chinese website!


The above is the detailed content of What development tools do you use for python?. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Linux: A Look at Its Fundamental StructureLinux: A Look at Its Fundamental StructureApr 16, 2025 am 12:01 AM

The basic structure of Linux includes the kernel, file system, and shell. 1) Kernel management hardware resources and use uname-r to view the version. 2) The EXT4 file system supports large files and logs and is created using mkfs.ext4. 3) Shell provides command line interaction such as Bash, and lists files using ls-l.

Linux Operations: System Administration and MaintenanceLinux Operations: System Administration and MaintenanceApr 15, 2025 am 12:10 AM

The key steps in Linux system management and maintenance include: 1) Master the basic knowledge, such as file system structure and user management; 2) Carry out system monitoring and resource management, use top, htop and other tools; 3) Use system logs to troubleshoot, use journalctl and other tools; 4) Write automated scripts and task scheduling, use cron tools; 5) implement security management and protection, configure firewalls through iptables; 6) Carry out performance optimization and best practices, adjust kernel parameters and develop good habits.

Understanding Linux's Maintenance Mode: The EssentialsUnderstanding Linux's Maintenance Mode: The EssentialsApr 14, 2025 am 12:04 AM

Linux maintenance mode is entered by adding init=/bin/bash or single parameters at startup. 1. Enter maintenance mode: Edit the GRUB menu and add startup parameters. 2. Remount the file system to read and write mode: mount-oremount,rw/. 3. Repair the file system: Use the fsck command, such as fsck/dev/sda1. 4. Back up the data and operate with caution to avoid data loss.

How Debian improves Hadoop data processing speedHow Debian improves Hadoop data processing speedApr 13, 2025 am 11:54 AM

This article discusses how to improve Hadoop data processing efficiency on Debian systems. Optimization strategies cover hardware upgrades, operating system parameter adjustments, Hadoop configuration modifications, and the use of efficient algorithms and tools. 1. Hardware resource strengthening ensures that all nodes have consistent hardware configurations, especially paying attention to CPU, memory and network equipment performance. Choosing high-performance hardware components is essential to improve overall processing speed. 2. Operating system tunes file descriptors and network connections: Modify the /etc/security/limits.conf file to increase the upper limit of file descriptors and network connections allowed to be opened at the same time by the system. JVM parameter adjustment: Adjust in hadoop-env.sh file

How to learn Debian syslogHow to learn Debian syslogApr 13, 2025 am 11:51 AM

This guide will guide you to learn how to use Syslog in Debian systems. Syslog is a key service in Linux systems for logging system and application log messages. It helps administrators monitor and analyze system activity to quickly identify and resolve problems. 1. Basic knowledge of Syslog The core functions of Syslog include: centrally collecting and managing log messages; supporting multiple log output formats and target locations (such as files or networks); providing real-time log viewing and filtering functions. 2. Install and configure Syslog (using Rsyslog) The Debian system uses Rsyslog by default. You can install it with the following command: sudoaptupdatesud

How to choose Hadoop version in DebianHow to choose Hadoop version in DebianApr 13, 2025 am 11:48 AM

When choosing a Hadoop version suitable for Debian system, the following key factors need to be considered: 1. Stability and long-term support: For users who pursue stability and security, it is recommended to choose a Debian stable version, such as Debian11 (Bullseye). This version has been fully tested and has a support cycle of up to five years, which can ensure the stable operation of the system. 2. Package update speed: If you need to use the latest Hadoop features and features, you can consider Debian's unstable version (Sid). However, it should be noted that unstable versions may have compatibility issues and stability risks. 3. Community support and resources: Debian has huge community support, which can provide rich documentation and

TigerVNC share file method on DebianTigerVNC share file method on DebianApr 13, 2025 am 11:45 AM

This article describes how to use TigerVNC to share files on Debian systems. You need to install the TigerVNC server first and then configure it. 1. Install the TigerVNC server and open the terminal. Update the software package list: sudoaptupdate to install TigerVNC server: sudoaptinstalltigervnc-standalone-servertigervnc-common 2. Configure TigerVNC server to set VNC server password: vncpasswd Start VNC server: vncserver:1-localhostno

Debian mail server firewall configuration tipsDebian mail server firewall configuration tipsApr 13, 2025 am 11:42 AM

Configuring a Debian mail server's firewall is an important step in ensuring server security. The following are several commonly used firewall configuration methods, including the use of iptables and firewalld. Use iptables to configure firewall to install iptables (if not already installed): sudoapt-getupdatesudoapt-getinstalliptablesView current iptables rules: sudoiptables-L configuration

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat Commands and How to Use Them
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools