You can set up a different virtual environment for each project for example if you are working on one project based on Tkinter module, some other projects based on Numpy module, then you can easily do this. We can have different versions of Python installed inside the virtual environment. When we have a virtual environment, then we can install new packages inside the virtual environment which will not affect the operating system's python modules. You must be thinking about why we need a virtual environment? So here are a few points in its favor: Instead, you should set up a virtual environment for your development purpose. If you are a Mac user, you should know that Python 2.7.x comes pre-installed in your Macbook, but as that is required by your operating system, so you cannot modify it or update it and I would recommend that you don't use it at all. This article will help you to set up a Python virtual environment on Mac OS or your Macbook.