Introduction to Computing Using Python Perkovic, Chapter 7 Functions revisited Python Namespaces Python error-handling.