Skip to content

Python software tools

Python software tools aid in the development workflow of Python programming, providing essential features and functionalities to streamline coding, debugging, and project management tasks. Some of the most common such tools are listed below and we encourage that you pick one up, as it will enhance your coding experience and ability.

Here, we will go through some commonly used text editors and IDEs, and notebooks.

Text editors

We recommend Visual Studio Code (VS Code) or its open-source variant VSCodium for Python development. Both are free, cross-platform, and provide excellent Python support.

Why use VS Code/VSCodium?

  • Intelligent code editing: Syntax highlighting, code completion (IntelliSense), and refactoring
  • Integrated debugging: Set breakpoints, inspect variables, and step through code
  • Built-in terminal: Run commands and scripts without leaving the editor
  • Python extensions: Rich ecosystem of extensions for Python development
  • Git integration: Version control built-in
  • Cross-platform: Available on Windows, macOS, and Linux
  • Highly customizable: Vast extension marketplace with themes, language support, and additional tools

Installation

Download from code.visualstudio.com

Download from vscodium.com

VSCodium is a fully open-source build of VS Code without Microsoft telemetry or branding.

After installation, install the Python extension for the best experience.

Debugging tip

When debugging in VS Code you are prompted to create a launch.json file, which then is stored in the .vscode folder in your project root directory. To make debugging more flexible, it is recommended that you add the following command to the launch.json file: "cwd": "${fileDirname}". This command makes the debugger navigate to the directory of the file you debug, which is helpful to make all relative paths in your code work.

Sublime text

Sublime Text is a lightweight yet powerful code editor known for its speed and simplicity. It offers features like multiple selections, split editing, and a rich selection of plugins and themes.

IDEs

Spyder

Spyder is an open-source integrated development environment (IDE) designed specifically for scientific computing and data analysis using Python. It provides a powerful environment for interactive computing and visualization.

Key Features:

  • Editor: Spyder features a code editor with syntax highlighting, code completion, and code analysis capabilities.
  • Variable Explorer: It includes a variable explorer that displays data objects, arrays, and variables in memory, allowing users to inspect and manipulate them interactively.
  • IPython Console: Spyder integrates an IPython console, providing an interactive environment for executing Python code, exploring data, and plotting graphs.
  • Debugger: The IDE offers debugging capabilities, allowing users to set breakpoints, inspect variables, and step through code execution.
  • Plotting: Spyder includes a built-in plotting functionality powered by Matplotlib, making it easy to visualize data and generate plots directly within the IDE.

PyCharm

PyCharm is a powerful Python IDE developed by JetBrains. It provides advanced features such as intelligent code completion, refactoring, version control integration, and support for web development with Django and Flask frameworks.

Notebooks

Jupyter Notebook / JupyterLab

Jupyter Notebook and JupyterLab are web-based interactive computing environments widely used for data analysis, visualization, and collaboration. They support various programming languages, including Python, R, and Julia, and allow users to create and share documents containing live code, equations, visualizations, and narrative text.