Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Which Python to use on Windows for Numpy and friends?

For research related Python programs, I require Python 2.6 (or 2.7), numpy, scipy and matplotlib. Occasionally, I'm going to use other modules such as mayavi2 or numexpr.

The programs in questions will be exchanged between (Ubuntu) Linux and Windows and can be modified to work across platforms. The setup on the Windows side should resemble the Linux one as closely as possible. Integration with COM, .NET, or the Windows OS is not required.

I'm aware of the following options:

  • Python for Windows from python.org
  • ActivePython
  • Python(x,y), a bundle of Python with modules and GUIs
  • Enthought Python distribution, a bundle of Python with modules

Which of those will provide me most efficiently with a setup that just works? And how would they differ?

like image 596
Jan Avatar asked Nov 15 '11 10:11

Jan


1 Answers

EDIT 2017-11-4: At this point in time Anaconda seems by far to be the best option. It is multi-platform, doesn't require admin/root permission, and it allows you to install multiple python versions in parallel.

Original post

The easiest way to install all the python libraries necessary for scientific computing is to install either Python(x,y) or Enthought Python Distribution (EPD). Both offer a fairly similar set of packages (including numexpr and mayavi2), so it's probably just a matter of personal preference. I prefer Python(x,y) because it is fully open source, whereas EPD is a commercial product with a free edition. You can compare the included packages for EPD and Python(x,y).

Both these options are much better than using the standard python (or ActiveState) then manually installing all the required scientific packages. Both should work well with code transported from Linux. It's worth mentioning that EPD also has a Linux version, so if you need all packages and versions to be absolutely identical between Windows and Linux setups, this might be the way to go.

Edit:The win32-superpack is a good option if you just want a few basic scientific packages, but if you want more complex things like mayavi, you'd need to install them yourself.

Edit 2013-05-03:

There are now a couple of other options which are also worth considering: winpython and anaconda

like image 168
DaveP Avatar answered Sep 29 '22 04:09

DaveP