Python Programming : An Introduction to Computer Science

Python Programming : An Introduction to Computer Science


This book is designed to be used as a primary textbook in a college-level first course in computing. It takes a fairly traditional approach, emphasizing problem solving, design, and programming as the core skills of computer science. However, these ideas are illustrated using a non-traditional language, namely Python. This textbook was written with a single overarching goal: to introduce fundamental computer science concepts as simply as possible without being simplistic. Using Python is central to this goal. Traditional systems languages such as C , Ada, and Java evolved to solve problems in large-scale programming, where the primary emphasis is on structure and discipline. They were not designed to make writing small- or medium-scale programs easy. The recent rise in popularity of scripting (sometimes called "agile") languages, such as Python, suggests an alternative approach. Python is very flexible and makes experimentation easy. Solutions to simple problems are simply and elegantly expressed. Python provides a great laboratory for the neophyte programmer. Python has a number of features that make it a near-perfect choice as a first programming language. The basic structures are simple, clean, and well designed, which allows students to focus on the primary skills of algorithmic thinking and program design without getting bogged down in arcane language details. Concepts learned in Python carry over directly to subsequent study of systems languages such as C and Java. But Python is not a "toy language." It is a real-world production language that is freely available for virtually every programming platform and comes standard with its own easy-to-use integrated programming environment. The best part is that Python makes learning to program fun again.

New to the Third Edition

The third edition continues the tradition of updating the text to reflect new technologies while maintaining a time-tested approach to teaching introductory computer science. An important change to this edition is the removal of most uses of eval and the addition of a discussion of its dangers. In our increasingly connected world, it's never too early to begin considering computer security issues. Several new graphics examples, developed throughout chapters 4-12, have been added to introduce new features of the graphics library that support animations, including simple video game development. This brings the text up to date with the types of final projects that are often assigned in modern introductory classes. Smaller changes have been made throughout the text, including:

Material on file dialogs has been added in Chapter 5.
Chapter 6 has been expanded and reorganized to emphasize value-returning functions.
Coverage has been streamlined and simplified to use IDLE (the standard "comes-with-Python" development environment) consistently. This makes the text more suitable for self-study as well as for use as a classroom textbook.
Technology references have been updated.
To further accommodate self-studiers, end-of-chapter solutions for this third edition will be freely available online.

Classroom instructors wishing to use alternative exercises can request those from the publisher. Self-studiers and instructors alike will be able to visit this website to download the solutions.

Similar Books

ISBN 10: 1593279280
ISBN 13: 9781593279288

09 May 2019
Eric Matthes

ISBN 10: 1597499579
ISBN 13: 9781597499576

17 Dec 2012
TJ O'Connor

ISBN 10: 1491912057
ISBN 13: 9781491912058

10 Dec 2016
Jake Vanderplas

ISBN 10: 0134692888
ISBN 13: 9780134692883

05 Sep 2019
Zed Shaw

ISBN 10: 1449355730
ISBN 13: 9781449355739

02 Aug 2013
Mark Lutz

ISBN 10: 0262529629
ISBN 13: 9780262529624

05 Feb 2019
John V. Guttag

ISBN 10: 1292159049
ISBN 13: 9781292159041

12 May 2016
David Barnes

ISBN 10: 0316016411
ISBN 13: 9780316016414

05 Nov 2009
Leonard Susskind

ISBN 10: 0815340249
ISBN 13: 9780815340249

06 Sep 2007
Marketa J Zvelebil

ISBN 10: 0134685997
ISBN 13: 9780134685991

06 Jan 2018
Joshua Bloch

ISBN 10: 1305494601
ISBN 13: 9781305494602

11 Feb 2016
Harry J. Rosenblatt

ISBN 10: 1284055914
ISBN 13: 9781284055917

13 Jan 2015
Nell Dale

Warning: fopen(/var/www/ failed to open stream: Permission denied in /var/www/ on line 0

Warning: fwrite() expects parameter 1 to be resource, bool given in /var/www/ on line 0

Warning: fclose() expects parameter 1 to be resource, bool given in /var/www/ on line 0