insteadpython supplies the venv tool this utility basically gives you mini python installation called virtual environment in your working directory when you activate the mini pythoncommands related to python will work on that directory instead of the system directory so when you run pip or pythonit won' touch the system python at all here' how to use itcd project_directory python - venv env source env/bin/activate on linux or macos env/bin/activate bat on windows typicallyyou'll create different virtual environment for each python project you work on you can store your virtual environments anywherebut keep mine in the same directory as the rest of my project files (but ignored in version control)so first we cd into that directory then we run the venv utility to create virtual environment named env finallywe use one of the last two lines (depending on the operating systemas indicated in the commentsto activate the environment we'll need to execute this line each time we want to use that particular virtualenvand then use the command deactivate when we are done working on this project virtual environments are terrific way to keep your third-party dependencies separate it is common to have different projects that depend on different versions of particular library (for examplean older website might run on django while newer versions run on django keeping each project in separate virtualenvs makes it easy to work in either version of django furtherit prevents conflicts between system-installed packages and pip installed packages if you try to install the same package using different tools case study to tie it all togetherlet' build simple command-line notebook application this is fairly simple taskso we won' be experimenting with multiple packages we willhoweversee common usage of classesfunctionsmethodsand docstrings let' start with quick analysisnotes are short memos stored in notebook each note should record the day it was written and can have tags added for easy querying it should be possible to modify notes we also need to be able to search for notes all of these things should be done from the command line