But just take pains to be clear & include sample code to illustrate your question and somebody will usually answer. (Also, stackoverflow.com is a good place to look for answers.)
Re the mac, none of the non-Apple python installs (i.e. from ActiveState or python.org) will deliberately override the 2.x version distributed by Apple. So you end up with two pythons. The Apple one lives in /System/Frameworks, and /usr/bin/python or /usr/bin/idle invokes it.
And whatever other one you install will be in /Library/Frameworks, and will have some name like python3 or idle3 and be in /usr/local/bin/ (which would need to be in your PATH). It's complicated but it allows two independent pythons to coexist.
Downloaded extension modules usually go to the site-packages folder for that python, with a path like