You're blocking ads, which pay for BlenderNation. Read about other ways to support us.

Learning Python



If you have been considering learning Python and are confused about how and where to start, there are several good suggestions that have recently been posted over at

Lots of people have posted links to good Python resources, but a good core of resources was in Friday13's post:

-How to Think Like a Computer Scientist: Learning With Python: Great book, available in both printed and free downloadable version.
-A Byte of Python: This is the first one I read. Though still in progress (it was recently ported to Wiki so others could contribute), it already offers a great deal of information, and it's easy to understand, even for those who've never coded before.
-Dive Into Python: For experienced programmers only, but it's downloadable so you might want to keep this site bookmarked until you're ready to read this book.
-Non-Programmers Tutorial For Python: A fairly good amount of content, and a bit outdated (though it's now in Wikibooks, so it's bound to change and evolve). Also good for people who've never programmed anything (as the title suggests). Documentation Index: Links to all the good sites (above links are included here).
-Python Tutorial: Essential, but not really aimed at non-programmers. I recommend reading it after gaining some experience, for learning things you might have missed.

Of course there is also more Blender specific instruction in terms of Blender such as Stephen Swaney's BSoD project Introduction to Python Scripting and the BlenderPython API introduction. There is also (which we've posted about) and as the name implies, there's a wealth of information regarding using Python for Blender.


  1. Err, speaking of python. Version 2.5 is out with some speed improvements. Anyone know when a blender build for that will be available? Thanks.

  2. I love Python. I learned the language in four hours, incuding writing a fairly complex program. I mainly learned from the Byte of Python book, but since then, I've also found to be a good resource for learning the language.

  3. is it really required to learn python in order to use blender? what is the purpose of python with blender? and what would be my advantage is i learn python then use it to blender?..

    sorry for the stupid questions just confused..thanks

  4. Sympodius:

    When you say you learned it in four hours, do you have any previous programming experience or was that your first language?

    Do you have some/little expereince with other languages or did you already know another language?



  5. @kellykamay:

    No, it's not required to learn python to use Blender. However, if you want to *extend* Blender in order to fit your needs, python is the easiest way.

  6. @LaughingCheese

    Sorry, didn't mean to give a false impression of my experiences. Python was probably my seventh or eighth language (I recently graduated University with an honours degree in Computing Science so I have a lot of programming experience). However, it usually takes me anywhere between one and three weeks to learn a language to the level of producing the program that I was talking about (if you're interested, it is here: ). So, from that point of view it is very easy to learn.

    Out of interest, the first language that my University taught me was called "Ada95", but they have recently changed the course to teach everyone Python as their first language because it is "more appropriate for beginners". Anyway, that's my two cents on it.

  7. Thanks for the links! Maybe I will learn some Python, but I'd really like to see a language like Ruby in Blender. I just don't think an advanced programming language like Python should be indentation-sensitive.

  8. why shouldn't it be? other languages use brackets or begin-end-blocks...

    you could also suggest that an advanced language shouldn't be case sensitive :D

Leave A Reply

To add a profile picture to your message, register your email address with To protect your email address, create an account on BlenderNation and log in when posting a message.