Last week we have new intensive course "Python Basics" in school. I have some earlier coding experiences with Java, JavaScript, Action Script and PHP before. I always wanted to learn python because it's in use in Blender and Modo. So this was good point to start. Here is some tools and links that I have used in the course.

Portable Python

We use portable python package in course (http://www.portablepython.com. There is PyScripter editor included in that portable package and I think it's really good development environment for python.

Python 2 or Python 3

Mainly we use Python 2 language in course but we tried to keep syntax suitable for both versions. There is some differences between python 2 and 3 versions that you need to know, otherwise you get errors. You can find many good posts about differences and what new in 3 version:

http://docs.python.org/3.0/whatsnew/3.0.html
http://python3porting.com/differences.html
http://docs.python.org/3/howto/pyporting.html

It's hard to decide which one of those twos you starting to learn if you're newbie with python. It depends from your needs. If you just stay with python you should learn from 3 version, but if you're going to use python mainly in third party sofware like Modo or Blender you should check first what python version them use. There is also couple good links that could help you with this decision:

http://wiki.python.org/moin/Python2orPython3

http://stackoverflow.com/questions/170921/should-i-learn-python-2-before-3-or-start-directly-from-python-3

Tutorials for the Python

There is some good tutorials in web where you can start to learn basics from python programming language. Here is couple good video series from YouTube what I have watched and liked:

Books

These days I rarely use regular paper books. There is digital versions available usually like this good python book for free in http://greenteapress.com/thinkpython/.

I think videos could be better than books if there is a good teacher. Books could be good if you need to remember how some script or command works, so mainly I use them with a search tool.

My work in course: Python Lotto

We made some training tasks in Python Basics course. I had already idea for my little programming task, it was a little program/tool for lottery 🙂 Read more about "Python Lotto" program.