Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Install python module to non default version of python on Mac

Tags:

python

module

I have a couple different versions of Python installed on my Mac. The default version is 2.5, so when I install a module it gets installed to 2.5. I need to be able to install some modules to a different version of Python because I am working on projects that use different versions. Any one know how to accomplish this? Thanks for your help.

like image 467
Sam Avatar asked Jun 02 '11 20:06

Sam


People also ask

How do I install a Python package to a specific version?

To install a specific version of a Python package you can use pip: pip install YourPackage==YourVersion . For example, if you want to install an older version of Pandas you can do as follows: pip install pandas==1.1.

How do I import a Python module Mac?

During a Python script the import command is used to call on other modules so that their functionality can be used in the script. Note: On Mac OSX if you type sudo python instead of sudo python3 then Mac OSX installs the module into Python 2 (which comes with Mac OSX High Sierra).


1 Answers

If you're installing using setup.py, just run it via the appropriate version of Python, e.g.:

python2.6 setup.py install

If you're using easy_install there should be a version for the corresponding Python version called easy_install-N.N, e.g.

easy_install-2.6 some_module

If you're working on different projects that require different versions of Python, consider using virtualenv (and virtualenvwrapper) - it allows you to fire up and use multiple environments each with its own version of Python and set of libraries. Example usage would be something like:

$ python -V
Python 2.5.4
$ mkvirtualenv --python=python2.6 foo
foo $ python -V
Python 2.6.1
foo $ pip install some_mod # installs module in foo's library, rather
                           # than site wide
foo $ deactivate # leave the virtual env
$ python -m some_mod
/path/to/python: No module named some_mod

To go back to the foo environment later, use workon:

$ workon foo
foo $ python -m some_mod # no error, apns available within the env
foo $ 

So you can use virtualenv to maintain separate environments for each version of Python you have installed. Within those environments, pip and easy_install just do the right thing.

like image 76
Simon Whitaker Avatar answered Nov 07 '22 20:11

Simon Whitaker