Where should I start with python

What is the best place to start with python. Python is the only thing that I lack in games and now it is holding me back.

Are their any python pros here

a good place to start is: http://docs.python.org/py3k/
and: http://wiki.python.org/moin/BeginnersGuide

A lot of people recommend: http://diveintopython3.org/
I learnt a lot from: http://code.google.com/edu/languages/google-python-class/set-up.html *
and www.pythonchallenge.com.

Get into the habit of googling/forum searches before asking questions on forums, often you will find that someone else has stumbled over the same things you have. The first two links are portals to most of the information you will ever need regarding Python.

Blender has a lot of it’s functionality exposed through Python, having a decent understanding of the language and the standard libraries is highly beneficial to increasing your coding/production speed and comprehension of pre-written code. It won’t happen overnight, but you will be able to do quite cool stuff relatively fast, or relative to your invested energy.

Regarding Blender Python programming, specifically for 2.5x, the API (application programming interface) has settled down a lot, enough to safely dig into. Recommended resources for Blender bpy:
- blender.org/documentation/blender_python_api (intro, examples, style guides )
- Py/Scripts/Cookbook/Code_snippets (examples / foundations for interfaces )
- blender.org/Extensions:Py/Scripts (scripts uploaded to blender.org)
- BlenderArtistForum/Released-Scripts-and-Themes (plenty of fully working examples)
- blenderscripting.blogspot (shameless plug for my investigations)

The process of learning python and bpy is similar to any more involved learning experience, in as much as there is a principle of delayed gratification. Do most of the investigation yourself and you will acquire important researching skills. If you always ask questions straight up without searching at least 30 minutes for it, then you achieve a fake sense of accomplishment too early as people answer not so difficult questions… you will have no hope for figuring out the cooler stuff.

Tips for asking questions if you do:

  • If you are getting errors, copy them verbatim.
  • If you have written code, it helps us to read all of it. (don’t be shy, do follow style conventions)
  • Use pasteall.org and paste it there or attach the code in a .blend
  • State what Operating System and Blender version you are running
  • Tell us what you expected your code to do.

(while the google classes cover an older version of python, the only real big difference you’ll notice immediately is print(“something”) in 3.1 used to be print “something” (without parentheses) in 2.7 and earlier. )