
Explore Python lists at an intermediate level, with unpacking, slicing, and list comprehension, while comparing lists, tuples, dictionaries, and sets to write more efficient code.
Install Python from python.org and set up Visual Studio Code on macOS, then write and run your first Python file using the terminal or the run button.
Install Python and Visual Studio Code on Windows, write your first Python file, and run it in the terminal to verify execution.
Explore Python's four built-in containers—lists, tuples, dictionaries, and sets—and learn their unique properties, including iteration, adding or removing elements, and read-only behavior.
Explore Python lists as the first container type by learning to create, iterate, access and mutate lists, then sort, reverse, and query with min, max, count, and index.
Discover tuples, an immutable Python container, and learn tuple unpacking, multi-variable packing, and swapping variables; create with or without brackets and pass tuples to functions.
Create dictionaries, use key subscription to look up values, and iterate, modify, and safely access keys with get and a default value.
Explore Python sets, their unordered nature and unique elements, and master union, intersection, difference, and symmetric difference to check membership, remove duplicates, compare sets, and learn subsets and supersets.
Explore common container operations in Python, including creating containers, checking element presence with in, and using zip, enumerate, all, and any for truth tests.
Master slicing to obtain partial lists and strings using arbitrary ranges, negative indexes, and steps, while learning that slicing returns new lists without altering the originals.
Explore Python comprehensions to map and filter containers with list, dictionary, set, and generator comprehensions. Build practical skills in transforming lists, zipping, unpacking, and using any, all, and next.
Master the four container types—lists, tuples, dictionaries, and sets—with common operations and slicing to transform lists. Practice what you learned and consider enrolling in more Python courses.
This course shows you exactly what every developer should know about Python lists beyond the beginner stage. You’ll strengthen and deepen your understanding of Python’s core data structures: lists, tuples, dictionaries, and sets, and build real confidence using them in practical code.
Throughout the course, you’ll learn useful tips, discover Pythonic techniques, and work through many hands-on exercises that help you practice the most common and important data-structure tasks.
Target audience
Developers who especially benefit from this course, are:
beginning programmers with ~6 months Python experience who want to take their coding skills to the next level
developers who bring experience from another programming language and want to learn how to work with lists in Python
self-taught Python developers who want to improve their list skills by learning best practices
Challenges
Students that are interested in this course often know basic list features but are not yet aware of Python’s unique language features that allows to write more optimized code. This can lead to verbose or slow code. It is my goal to teach you up-to-date, preferred ways to work with lists in Python and make your code readable, predictable and elegant.
What can you do after this course?
Make better decisions when to use one of the 4 built-in container types by seeing their specific features.
Work with lists more efficiently by using Python-specific language features like unpacking, slicing and comprehensions.
Optimize your existing code after learning that Python offers many built-in common list operations.
Topics
What is a Container? Container definition and the 4 built-in container types in Python.
Lists: Create and change lists. Accessing elements, reverse, sort, count elements.
Tuples: Create and unpack, assign, swap variables, tuples as return type.
Dictionaries: Dictionary purpose, keys, lookup, iterate.
Sets: Set purpose, mathematical operations, superset, subset.
Common operations: Zip, enumerate, all, any, concatenate, check if element is in list.
Slicing: Slice, head, tail, init, last.
Comprehensions: Mapping, filtering, flatten, matrix.
Duration
2 hours video time, ~6 hours including practicing exercises.
The teacher
This course is taught by Loek van den Ouweland, a senior software engineer with 25 years of professional experience. Loek is the creator of Wunderlist for windows, Microsoft To-do and Mahjong for Windows and loves to teach software engineering.