1. Introduction. 2. Data Types and Expressions. 3. Control Statements. 4. Strings and Text Files. 5. Lists and Dictionaries. 6. Design with Functions. 7. Simple Graphics and Image Processing. 8. Graphical User Interfaces. 9. Design with Classes. 10. Network Applications and Client/Server Programming. 11. Searching, Sorting, and Complexity. Appendices. Glossary. Index.
Kenneth A. Lambert is Professor of Computer Science and Head of the Department at Washington and Lee University. He has taught programming language design for 25 years and has been an active researcher in computer science education. Lambert has co-authored a series of introductory C++ textbooks with Douglas Nance and Thomas Naps and a series of introductory Java textbooks with Martin Osborne, and is the author of an introductory Python textbook. He is also the co-creator of the BreezySwing framework and is the creator of the breezypythongui framework.