Practical Programming: An Introduction to Computer Science Using Python 3