I am looking for any resources that gives examples of Best Practices, Design patterns and the SOLID principles using Python.
I am looking for any resources that gives examples of Best Practices, Design patterns and the SOLID principles using Python.
Some overlap in these
Intermediate and Advanced Software Carpentry in Python
Code Like a Pythonista: Idiomatic Python
Google Developers Day US - Python Design Patterns
Another resource is by example at the Python Recipes. A good number do not follow best practices but you can find some patterns in there that are useful
Type
>>> import this
in a Python console.
Although this is usually treated as a (fine!) joke, it contains a couple of valid python-specific axioms.
You can get started here and here.
For a more in depth look at design pattners you should look at Design Patterns: Elements of Reusable Object-Oriented Software. The source code is not in Python, but it doesn't need to be for you to understand the patterns.
You may also wish to read this article (select the .pdf file), which discusses Design Patterns in dynamic object oriented languages (i.e. Python). To quote the page:
This paper explores how the patterns from the "Gang of Four", or "GOF" book, as it is often called, appear when similar problems are addressed using a dynamic, higher-order, object-oriented programming language. Some of the patterns disappear -- that is, they are supported directly by language features, some patterns are simpler or have a different focus, and some are essentially unchanged.