Data science projects depend on a lot of open source libraries and tools for doing data analysis. Many of those tools are constantly updated with new features, which sometimes break APIs. It is important to fix all dependencies in a shareable format that allows every team member to use the same versions and build libraries.
The Python ecosystem has multiple environment management tools that take care of different problems. Tools overlap in their use cases and are often confusing to choose from, so we will cover each briefly:
- pyenv (https://github.com/pyenv/pyenv) is a tool for managing Python distributions on a single machine. Different projects may use different Python versions, and pyenv allows you to switch between different Python versions between projects.
- virtualenv (https://virtualenv.pypa.io) is a tool for creating virtual environments that contain...