Details what concurrency and parallel programming are in Python and shows practical examples of using multithreading, concurrent.futures, and asyncio.
Python is an open-source, general purpose, high level programming language. Its flexibility allows you to do many things with it, big and small. It can be used for everything from simple scripts to complex, large-scale enterprise applications. It's often used for:
- Back-end web development
- Artificial intelligence and machine learning
- Data analysis and visualization
- Web scraping and crawling
- Desktop GUIs
- Automation, testing, and deployment
That said, it's community is what makes it really stand out amongst other programming languages. There's a wealth of open-source tools and libraries at your disposal. There's also plenty of tutorials and other community-maintained resources available.
The tutorials and articles on TestDriven.io are on the more intermediate to advanced side that focus on developing Python-based applications with Test-Driven Development (TDD), writing clean code, and leveraging concurrency and parallelism.
Latest Posts (18)
How to write clean code in Python.
This article first provides an overview of Oauth2 concepts and then looks at how to implement OAuth2 with OAuthLib.
This article looks at some tools and techniques that help make testing in Python easier.
This article looks at how to configure GitHub Actions to distribute a Python package to PyPI and Read the Docs.
Commonly used web authentication methods.
This article looks at why you should document your Python code and how to generate project documentation with Sphinx and OpenAPI.
This article looks at how Bazel can be used to create reproducible, hermetic builds.
This article looks at what type hints are and how they can benefit you. We'll also dive into how you can use Python's type system for type checking.
Improve the quality of your Python code with linters, code formatters, and security vulnerability scanners.
Set up your own private PyPI server with pypiserver and Docker.
This article looks at the available tools for dependency and workspace management in Python.
Interested in how TDD works? This guide walks you through the process, using modern tools and techniques, from start to finish.
This post looks at how to speed up CPU-bound and IO-bound operations with multiprocessing, threading, and AsyncIO.
Looks at the new features in Python 3.9 and how they can be implemented.
This post looks at how to implement several asynchronous task queues using the Python multiprocessing library and Redis.
Looks at how to use dependency injection to decouple and improve the design of a Python application
Looks at an example of how Test-Driven Development improves code quality.