Python is an interpreted object-oriented programming language. It is open source, so the interpreter and source are freely available and distributable in binary form. Python has many built-in high-level data structures and utilizes dynamic typing and binding, making it an excellent choice for both scripting and application development. Programming in Python can be extremely quick and productive owing to the lack of a compilation step as well as the built-in debugger (also written in Python). This fast edit-test-debug cycle is one of the main draws for programmers who wish to develop in Python, while others are drawn to the active and passionate Python community. This path will take you from the basics of the Python language all the way up to working with web frameworks and programming a Raspberry Pi.