Code Editors and Integrated Development Environments (IDEs)
- Visual Studio Code (VS Code) - A lightweight, highly customizable code editor with powerful extensions for Python development.
- PyCharm - An advanced IDE with comprehensive features for professional Python development, available in both free and paid versions.
- Jupyter - Variety of tools including interactive web-based environments ideal for data science, prototyping, and collaboration.
- Sublime Text - A fast and versatile text editor with a wide range of plugins for Python programming.
Linters and Code Formatters
- Pylint - Analyzes Python code to identify errors, enforce coding standards, and suggest improvements.
- Flake8 - A tool that combines several Python tools to check the style and quality of your code.
- Black - An uncompromising code formatter that automatically formats your code to adhere to PEP 8 standards.
Debugging Tools
Version Control
- Git - A distributed version control system that tracks changes in your code and allows you to manage versions, branches, and collaboration locally and remotely.
- GitHub - A cloud-based platform for hosting Git repositories, enabling collaboration, code review, and project management features.
- GitHub Desktop -A user-friendly GUI for Git and GitHub that simplifies committing, branching, and syncing changes without using the command line.
Note: Alternative options exist for this, but this is standard. Stick with it unless you have reason not to.
Environment and Dependency Management
Documentation
- Sphinx - A documentation generator that converts reStructuredText files into HTML, LaTeX, and other formats.
- MkDocs - A static site generator for project documentation using Markdown. -PEP Style Guides - Conventions for best practices in Python.