Learn to Program: Crafting Quality Code
This course provides an introduction to some of the tools and concepts that professional programmers use. Topics include algorithm design, automated testing using unittest and doctest, runtime complexity, object-oriented programming, and exceptions.
This respository contains assignments and their solutions in Python. They were added after successfully completing the University of Toronto's non-credit online offering of the course at Coursera.