Getting Started with Python, Fabrizio R., Benjamin B., Dusty P., 2019.
This learning path helps you get comfortable in the world of Python. It starts with a thorough and practical introduction to Python. You’ll quickly start writing programs in the first part of the learning path. With the power of linked lists, binary searches, and sorting algorithms, you’ll easily create complex data structures, such as graphs, stacks, and queues. After understanding cooperative inheritance, you’ll expertly raise, handle, and manipulate exceptions. You will effortlessly integrate the object-oriented and not-so-object-oriented aspects of Python, and create maintainable applications using higher level design patterns. Once you've covered the core topics, you’ll understand the joy of unit testing and just how easy it is to create unit tests.