Python Books For Beginners
Thursday, 18 June 2015
Article Index
Python Books For Beginners
Python For Programmers and Kids

Python has become a popular language for complete beginners. It is always a tall order to teach programming from scratch - and these days books increasingly take a back seat to interactive online methods. Even so, having a book on a topic is a good way to consolidate a practical approach to learning a computer language.

IProgrammer takes a real interest in books. We try to keep up with new releases with our daily Book Watch and we run a dozen or more full reviews every month in which members of the team select titles that match their interests. We have over 40 reviews of books relating to Python but to be included in a Programmer's Bookshelf selection a book has to have been awarded at rating of at least 4 out of 5. This gives a list of over 20 books to recommend to those interested in Python - but no one person would want all of them.

Because of this we've divided the books into two piles - one for beginners and one for more experienced Pythonistas.


python3

For this round-up the main points of each review have been extracted. To read the full version click on the title. Clicking on the book jacket thumbnail in the side panel will take you to Amazon and if there's is a Kindle version (the lower of the two thumbnails in the side panel) you can generally read the introductory chapter.

If you make a book purchase accessing Amazon via a link to it on IProgrammer we are credited with a few cents - so thanks to all of you who support us in this way.

 

Banner
 

 

Python Textbooks

Although many Python developers are self-taught, some others will first encounter it as part of their university education or by taking a MOOC, see Python Becomes Most Popular CS Teaching Language and Learn Python Online For Free. So it seems only appropriate that we start with a selection of textbooks, beginning with one that earned a top rating and is also included in Best Books Of 2014.  

 

Introduction to Computation and Programming Using Python

Author: John V Guttag 

Publisher: MIT Press, 2013
Pages: 296
ISBN: 978-0262525008
Kindle: B00EK6P6RM

Rating: 5

This is the text book for the Introduction to Computer Science and Programming Using Python MOOC on edX, which is co-taught by its author John Guttag.book. It isn't exclusively focused on teaching you to code in Python. Instead it's a more general book on the ideas and practice of programming and algorithm construction. It has a slightly academic feel to it, even though the style is casual. The book uses Python 2 but this is largely irrelevant and the language takes second place to more general ideas. 

introductiontocomputationusingpython

Overall this is a well-written book, but it doesn't make any attempt to drop the intellectual level. You are expected to read and think about what you are being told. Don't expect to find anything about writing your first game or graphics for fun. This is serious stuff aimed at the serious student. The range of topics explored leans towards the statistics side of the science and it would make a good book for any student studying almost any STEM subject. Expect to learn as much about stats as computing as you progress. 

Practical Programming: An Introduction to Computer Science Using Python 3 

Authors: Paul Gries, Jennifer Campbell & Jason Montojo
Publisher: Pragmatic Bookshelf, 2013
Pages: 350
Print: 978-1937785451
Rating: 4
Reviewer: Mike James

Two of the authors of this book,  Paul Gries and Jennifer Campbell,  taught the MOOC Learn to Program on the Coursera platform, a courtse which was intended for for people who have never seen a computer program. Similarly, the book is intended for complete beginners with a slant towards the academic.

The book is a second edition that has re-organized its material to bring some of the key programming ideas earlier in the book.  It starts off with the absolute basics and describes what a program is and what programming is all about. Chapter 2 gets you started on writing some code - all very simple expressions values and variables. Chapter 3 introduces functions which might seem a bit early given we haven't yet met any control statements - but for Python it makes good sense. 

pracprog2

Even though it now merits a rating of 4, reviewer Mike James still has reservations, concluding:

This book seems to be attempting to do too much in too little space. It's not a bad introduction to programming in Python but it could have been so much better if it had dropped the requirement to tackle computer science head on and simply used the principles in the background to motivate and guide the presentation.

If you are looking for a book that introduces the non-programmer to Python there are better choices that don't confuse the issue with an academic agenda. If you want a book that will lift your Python programming and give you an idea of what sorts of things lurk below the surface then this is a good choice, but it isn't an easy read for the beginner. 

Introduction to Programming Using Python

Author: Y. Daniel Liang
Publisher: Prentice Hall,  2012
Pages: 558
Print: 978-0132747189
Rating: 4.5
Reviewer: Mike Driscoll

The target audience for this book is college or high school students and as such has test questions and some programming exercises. There is an accompanying website that includes answers to the review questions and the even-numbered programming exercises as well as source code examples from the book. It also includes some interactive self-test questions and supplements to the text.


intorpython

 

Concluding his detailed review of this 15-chapter book Mike Driscoll says:

I found the writing to be clear and pretty concise without a lot of witty banter. Yes, it is a little dry, but most programming textbooks are. While the chapter order is a little screwy to my mind, it states in the Preface that you don’t have to read them in the order printed. If you’re new to programming or just new to Python, then this book should get you going pretty well.

<ASIN:  0262525003>
<ASIN: B00H4D1W9E>

<ASIN: 1937785459>

<ASIN: 0132747189>

 



Last Updated ( Wednesday, 27 February 2019 )