Python Links¶
Books¶
Visual Studio Code¶
Python Beginner Tutorials¶
5 Common Python Mistakes and How to Fix Them, by Corey Schafer
Python Quick Tip: F-Strings - How to Use Them and Advanced String Formatting, by Corey Schafer
Python Tutorial for Beginners 4: Lists, Tuples, and Sets, by Corey Schafer
Python Tutorial for Beginners 5: Dictionaries - Working with Key-Value Pairs, by Corey Schafer
Python Tutorial for Beginners 7: Loops and Iterations - For/While Loops, by Corey Schafer
Python Tutorial for Beginners 8: Functions, by Corey Schafer
10 Python Tips and Tricks For Writing Better Code, by Corey Schafer
Python Tutorial: Using Try/Except Blocks for Error Handling, by Corey Schafer
Modules from Standard Library¶
Python Tutorial: OS Module - Use Underlying Operating System Functionality, by Corey Schafer
Python Tutorial: Calling External Commands Using the Subprocess Module, by Corey Schafer
Python Tutorial: re Module - How to Write and Match Regular Expressions (Regex), by Corey Schafer
Python Tutorial: CSV Module - How to Read, Parse, and Write CSV Files, by Corey Schafer
Advanced Python¶
Transforming Code into Beautiful, Idiomatic Python, by Raymond Hettinger
Python Tutorial: Duck Typing and Asking Forgiveness, Not Permission (EAFP), by Corey Schafer
Python Tutorial: Unit Testing Your Code with the unittest Module, by Corey Schafer
Python Tutorial: Decorators - Dynamically Alter The Functionality Of Your Functions, by Corey Schafer
Python Tutorial: VENV (Windows) - How to Use Virtual Environments with the Built-In venv Module: Corey Schafer again. Virtual environments are kind of an isolated development sandbox, solving a similar problem as containers do, but much more lightweight and Python only.
NumPy and Data Science Tutorials¶
PyPI (Installing Modules that don’t come as Batteries)¶
Python Tutorial: pip - An in-depth look at the package management system, by Corey Schafer
Packaging, Deployment, PyPI, and pip: Chris Wilcox (of Google) talking about packaging and deployment, and related topics
Git, and Github¶
Conference Talks¶
David Beazley¶
Built in Super Heroes. David Beazley in an entertaining keynote to the “PyData Chicago 2016” conference. He has a number of very good and entertaining (and very advanced) videos. You have to spend an entire evening with him though.
The Fun of Reinvention - David Beazley - Pycon Israel 2017. David Beazley with an entertaining keynote about typing, type annotations, metaprogramming, contracts.
Keynote - David Beazley. David Beazley live coding a Web Assembly interpreter. PyCon India 2019.
David Beazley: Generators: The Final Frontier - PyCon 2014: David Beazley again a bit (a whopping four hours) more precise on that topic.
Modules and Packages. David Beazley has a three hour (!) really cool and in-depth look into the seemingly simple
import
mechanism.Modules and Packages: Live and Let Die (Screencast). David Beazley dissecting the module loading mechanism (a whopping three hours long).
Curious Course on Coroutines and Concurrency. David Beazley, entertaining as always. Tutorial session given at PyCon Chicago 2009. (Three hours!)
Iterations of Evolution: The Unauthorized Biography of the For-Loop. David Beazley giving lessons in history. How
for
evolved from the beginning until where we are today.Understanding the Python GIL: David Beazley dissecting the Global Interpreter Lock, explaining why multiprocessing is better. At around minute 45, in the questions/answers, there is a mention that using NumPy operations in multiple threads is truly parallel.
Raymond Hettinger¶
Transforming Code into Beautiful, Idiomatic Python. Raymond Hettinger, reiterating his favorite phrase: “There must be a better way”. (Hettinger is a “Python Core Developer”.)
(He uses Python 2 though.)
Raymond Hettinger - Super considered super! - PyCon 2015. Raymond Hettinger, revolving around
super()
and MRO.Raymond Hettinger - Modern Dictionaries. Raymond Hettinger, explaining how dictionaries are implemented.
Raymond Hettinger, Keynote on Concurrency, PyBay 2017: Raymond Hettinger covering most if not all aspects and possiblities of concurrency. Very informative, very concise, covering
Multithreading
Multiprocessing
Async; I didn’t even mention that. asyncio. Me big fan.