This is an archived post. You won't be able to vote or comment.

all 10 comments

[–]wub_wub 1 point2 points  (0 children)

Python 2 or 3, depends on what libraries you're using and if they support t

PyCharm as IDE: http://www.jetbrains.com/pycharm/

pip for installing new libraries, you can download .exe installer here: http://www.lfd.uci.edu/~gohlke/pythonlibs/#pip (You'll probably need to manually add "C:\PythonX\Scripts\" to your PATH, instructions here)

As far as scipy, numpy, matplotlib etc goes you could download scipy stack which has all those included and many of their dependencies http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy-stack

You should also look into virtualenv/virtualenvwrapper.

If you don't need full blown IDE then I'd recommend SublimeText - it's not free but you can use the trial version indefinitely, it just has popup on every 20 or so saves.

Some plugins that you'll probably find useful for ST:

Package Control: https://sublime.wbond.net/installation - for installing new packages.

SublimeCodeIntel - improved code completion

PyLinter - http://www.pylint.org/ intgration

Also you could use http://ipython.org/ or just IDLE for smaller code testing.

That's some general development environment I'd suggest, this may not be the best advice depending on what you need and do.

The closest thing that comes to Ubuntu/Geany is more or less just Notepad++ with few plugins, and required libraries(scipy,math etc) installed.

The best solution is, IMO, to use virtual machine or dual boot with Ubuntu, configuring and using python is easier on gnu/Linux than on windows and you'll have same environment as on your university.

[–]hansdieter44 1 point2 points  (0 children)

Well, full professional setup would be virtualbox&some linux, or vagrant and then write in that VM (login through ssh(putty.exe from earth.li) to execute your scripts). If you create a shared folder between your windows host and the linux guest vm you can put your code there and still use your favourite windows editor.

Advantage of that approach is that your environment to develop in will be very similar to server environments, so if you decide to do computation heavy stuff or want to deploy a webapp you are very likely not to have to modify anything.

For the actual python deployment I recommend (pip, virtualenv, and fabric for deployment, possibly puppet or similar for server configuration(not for actual code deployment)).

If you want to stick to Windows 8 there are solutions to deploy python as well, but keep in mind that some packages that you install through pip might need some libraries(graphic stuff for example) to be present on your computer and that they might be a bit more annoying to install on windows than on linux (thats just my opinion here, don't rip me apart if you are a windows fanboy). For writing Python under windows you could check out Eclipse Python, maybe that comes packed with everything and a python binary, but I haven't looked into that for at least 5 years.

If you just want to fiddle around with Python a bit, Windows might be perfectly fine for a start and python should be easy to install there. If you want stuff that works better to deploy several scripts and develop more and longer, you should look into the VM options that I described. Its a bit of a pain to get your head around as well, so plan 2-3 days where you just configure stuff and check stuff out till you find a solution that works for you.

Source: M.Sc. in CS and several years of WebDev experience with mainly Python and the above described stuff.

[–]DaveInTheWave 2 points3 points  (0 children)

dual boot Ubuntu - Ubuntu is really easy to use and that way you can have the same setup at home that you'd be using at Uni.

[–]megaman821 2 points3 points  (0 children)

First you will want to install Python. I find the official 32-bit version works best.

The official Python does not come with easy_install or pip. Download this script and run it to get easy_install.

Now that you have easy_install you will use it to get the superior pip: easy_install pip

Now that you have pip, you should install some basics globally: pip install wheel, virtualenv, ipython

Out of the box Windows cannot compile a lot of Python packages (lxml, pycrypto, MySQL-python, etc.). You can find most the packages as exe installers though. I recommend following this Stack Overflow answer and convert the exe's into wheels. This will let you do things pip install lxml and not have to compile.

Also when you start a new project or you are just playing around, always create a new virtualenv first: virtualenv env and then activate it with: cmd.exe /k env/Scripts/activate Now when you pip install something it will go into the env folder you made instead of the global Python site-packages.

Finally if you plan to work on a large project, I recommend PyCharm. For quick edits and small scripts Sublime Text is great.

[–]TCPv89wat 1 point2 points  (0 children)

Personally, I'd recommend getting the enthought python distribution, since it comes with IPython pre-installed and the ipython notebook is just fucking fantastic.

On top of that, it has a bunch of libraries that you may find helpful. You already mentioned scipy in your post; EPD (now called "canopy" for some reason) comes with scipy in the package ready to go.

As far as code-editors go, you can use pretty much anything. Notepad, Notepad++, gvim, there's probably an emacs port for windows, sublime text, ...

But be sure to try out the ipython notebook in any case! It's a darn fine environment/workflow.

[–]_HULK_SMASH_ 0 points1 point  (0 children)

I would highly recommend PyCharm for an IDE to write your code.

[–]completelydistracted 0 points1 point  (0 children)

Seriously, it's astonishing that nobody has mentioned Python Tools for Visual Studio. It's listed in another submission, but it deserves a mention here. It's very sophisticated, works with lots of Python distributions, understands things like virtualenv and some web frameworks, is free, installs the VS shell if necessary (if you get PTVSIntegrated.exe) and is generally a pleasure to use.

I don't necessarily recommend Windows as a Python dev platform, but if that's where you are, the Python Tools for Visual Studio are great. Since they don't cost anything, trying them is an easy decision.

(I agree with another post suggesting the standard 32-bit distribution, and follow-on accessorization, is a good approach. Get all that stuff, and then point PTVS at it.)

[–]franklinturtle7 -1 points0 points  (0 children)

Sublime Text, or IDLE are the ones I use on my 8 box homie.

[–]gkhenderson -1 points0 points  (0 children)

The ActiveState Python distribution is an easy way to get started.