The better you understand what it means to be Pythonic, the better your code will be.
When code is Pythonic, it's code that properly uses the idioms of Python to accomplish tasks in a clean, powerful manner.
When a programmer becomes Pythonic, they achieve a state of mind that allows them to solve previously hard or impossible problems, because the programmer actually understands how Python works, and is thus able to go with the flow instead of fighting things.
This is not academic. It's not about theoretical approaches that fall apart in the real world. It's about getting your job done in fewer lines of code, faster, and more maintainably.
Audience: Anyone with a comfortable background in programming.
Length: 2-3 days, depending on options chosen.
Approach: Each topic starts with a very interactive, discussion-based lecture where I do live coding to explain concepts, punctuated by student exercises. The level of depth for each topic, and what optional topics we cover, is heavily influenced by the interest and needs of the students. Students receive book-length HTML and Jupyter Notebook files of the entire class content.
Part 1: Hello Python
Part 2: Lists
You can pick and choose among these based on your needs.
Automation and Workflow