Learn Python for $15

(I have no affiliation with O’Reilly, humble bundle or the authors of these books)

I’m currently enjoying reading the widely recommended Fluent Python, having taken up this offer, available for a few more days. I thought I’d let you know before the offer expires :snake:

1 Like

You have to subscribe to an auto-renewal site? No thanks.

No subscription if you just buy the Python bundle.

1 Like

Hey this looks awesome!!! thank you for sharing it!

1 Like

Is it any good, in relation to GHPython?

I think it’s a good level for you, based on your recent posts ! It is aimed at someone who knows all the basic elements of Python, e.g. how to make, query and iterate over a dictionary but it gives good practices and lesser known features, eg .setdefault, defaultdict and mapping proxies to help you write more pythonic code and improve readability and performance. I learn something new and useful in each section.
It is written for CPython 3.4 but almost all of it applies to Ironpython 2.7. The added advantage is that if Ironpython3 ever gets finished and added to Rhino, they are targeting Py3.4 compatibility.

1 Like

I don’t get a word your saying here! :wink:
Thanks, Graham.

1 Like

Don’t you have to subscribe, and then cancel the subscription? I might be missing something :thinking:

That is something different, thats their humble bundle montly. For the linked bundle you just pay what you want to pay(and receive the items based on that).

1 Like

No I think I thought that at first but no

Weird, I can’t seem to proceed without checking this radio button:

did you click on “add to cart”?

edit: you have to choose the amount you want to pay (or custom) and it will procced the order.

1 Like

I did all that, then clicked Pay with Card below, then the screen scrolled back up, showing the screen/message I posted above.

Edit: You can click Remove to get rid of the subscription radio button once it appears!

Well, you added the humble montly bundle to your cart. Remove it,

Oh wait, no yeah I did. This interface is pretty confusing. As you were :wink:

1 Like

Anyways, I had no issue ordering it. Remove the humble montly, choose the amount, enter your email or log in with your account and then proceed to pay. Its a bit cumbersome, but I dont think they are going to change it. I “fondly” remember the first bundles I wanted to buy. Quite an adventure in itself.

1 Like

collections.defaultdict is nice for instance if you want to organise a bunch of objects by layer, or some other parameter.

You can say objects_by_layer = defaultdict(list) and then iterate over your objects adding them to the dict with objects_by_layer[layer].append(obj) and you don’t need to check that the key (layer) exists already. If it doesn’t, a new list will be added at that index. It is faster than a try…except or an if statement and uses fewer lines of code


Wow, nice! Thanks again!

Time’s up! :clock12: