Wondering what to watch next? Pick a new topic below and start watching from the beginning.
You're welcome to watch Python Morsels screencasts in any order, but if you're completely new to a topic I recommend watching the videos for that topic in the order below. Make sure to come back to this page later, as the contents of each topic will change as new videos are released each week.
for loops in Python don't have indexes.
This small distinction makes for some big differences in the way we loop in Python.
Python, like many programming languages, has functions. A function is a block of code you can call to run that code.
Python's functions have a lot of "wait I didn't know that" features. Functions can define default argument values, functions can be called with keyword arguments, and functions can be written to accept any number of arguments.
In Python it's very common to build up new lists while looping over old lists. Partly this is because we don't mutate lists very often while looping over them.
Because we build up new lists from old ones so often, Python has a special syntax to help us with this very common operation: list comprehensions.
Python has 4 scopes: local, enclosing, global, and built-ins. Python's "global" variables are only global to the module they're in. The only truly universal variables are the built-ins.
It's tempting to reach for indexes when working with tuples, lists, and other sequences, but if we know the shape of the tuple we're working with, we can unpack it instead.
Tuple unpacking (aka "multiple assignment" or "iterable unpacking") is often underutilized by new Python programmers.
Classes are a way to bundle functionality and state together.
The terms "type" and "class" are interchangeable:
bool are all classes.
You'll certainly use quite a few classes in Python (remember types are classes) but you may not need to create your own often.
These topics are commonly overlooked by new Python programmers.
Python's variables aren't buckets that contain things. They're pointers that reference objects.
The way Python's variables work can often confuse folks new to Python, both new programmers and folks moving from other languages like C++ or Java.
My name is Trey Hunner and I'm a Python trainer. Through Python Morsels I publish new Python screencasts every week and I also send out Python exercises.