I'd like to get into scipy and first setup my macbook air for python development. The problem is I have many different versions of python installed - here is what I get when bash autocompletes "pyth":

python             python2.6-config   python3-config     python3.4m-config
python-config      python2.7          python3.4          pythonw
python2            python2.7-config   python3.4-32       pythonw2
python2-config     python3            python3.4-config   pythonw2.6
python2.6          python3-32         python3.4m         pythonw2.7

I'm wondering what I can do to simplify this situation, choose a version to work with and be done with the matter.

  • 1
    awesome question. i wish the python people could just get their shit together instead of littering it all over my fs. – mikeserv Oct 14 '15 at 1:41
  • Python bites. But it is still a great language – theideasmith Oct 14 '15 at 1:42
  • @theideasmith: You should go with virtualenv. – cuonglm Oct 14 '15 at 1:51
  • Virtualenv seems like it will be the best solution. I'm just really annoyed by my current python mess and would like to clean it up. – theideasmith Oct 14 '15 at 1:52
  • 1
    virtualenv doesn't fix the problem, it surrenders to it and encourages you and all users to make it worse. – cas Oct 14 '15 at 1:55

Macs aren't the only OS that suffers from this problem. All Linuxes do also. The problem occurs because of the following idea:

  1. I built an application using python2.6.
  2. As a dependency, my package requires python2.6
  3. I could require python as a dependency, but I can't guarantee that you have >=2.6, therefore I must use the version number.
  4. All python apps suffer from this issue, therefore python allows Side by Side installations of multiple versions.
  5. Some systems, such as Gentoo, allow a system python and a user python, ie a python shebang will point to the system python. This makes the issue easier to modularize, but like @mikeserv, I have about 4 versions installed.
  • these days any application which lists python as one of its dependencies is almost definitely immediately moved to last on my list of possibilities. i have a similar relationship with perl actually, though at least it doesnt want an entirely new installation for each dependency issue, only some 4 of 5k modules or whatever. – mikeserv Oct 14 '15 at 2:32
  • Is this a reason not to use python? – theideasmith Oct 14 '15 at 11:24
  • @theideasmith Each programming language, whether it be python, php, perl, etc was written to fulfill some particular purpose. The oddities of any particular language should not keep you from using the language. In fact, I can guarantee that if you tried to remove all the versions in your system, something WILL break. – eyoung100 Oct 14 '15 at 15:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.