Python has two separate common versions happening: 2.7 and 3.somethingorother. There are language differences between the two. And since both versions are active, both versions have to be supported, and the libraries for each, due to language differences between versions, have to be managed separately.
To do this, something called virtualenv was created. The short form of getting things functioning:
[sudo] pip install virtualenv # installs the package mkdir# create a directory for the project cd # get settled into the directory virtualenv env # creates a project local environment for libraries (first part of the the magic trick) . env/bin/activate # use each time when starting project work (second part of magic trick, fixing path) deactivate # use when ready to undo the path fix