Table of Contents
Motivation
Learning the programming language Python is easy but becoming a proficient developer can be quite cumbersome:
Python has a complex ecosystem of package / dependency management, some finicky language details and of course you should learn some tricks of the trade as well.
So here is the place to start your journey into the world full of Python
Before you start
When you start a new project it’s good to think about the structure before you start to code
How to structure your Python project
Language Tips
Basic Features
Python variable length arguments
Running external commands from Python
How to work with the Python os module
How to use the sys module in Python
Program Input
How to use the configparser module
File handling & manipulation
How to work with the Python os module
Getting the file extension from a file path in Python
More about structure
How to implement Python Decorators
How to implement Python Decorators – Part 2
Classes & Data Structures
What’s the difference between classmethod and staticmethod in Python?
Useful 3rd party packages
How to use google translate with python
How to manipulate nested dictionaries with dotty
How to store sensible data in a .env file
Overcoming PyInstaller Pitfalls
numpy
Linear Algebra with numpy – Part 1
matplotlib
Introduction to matplotlib – Part 2
Introduction to matplotlib – Part 3
pandas
JuPyteR Notebooks
Introduction to Jupyter Notebook
How to visualize geo coordinates with ipyleaflet
Testing & Quality
How to let test cases run in a predefined order
Why you should use PyHamcrest in testing
How to use tox to test your code on multiple platforms
How to add Travis CI to your github project
How to use the timeit module to check performance of your code
Logging
Logging in Python – Cheat Sheet
Packaging & Dependencies
Distributing your own package on PyPi