<div dir="ltr"><div>[Just a note, all the book links in my original post have complete table of contents listing, so don't just take my word on their suitability.]<br><br>Here's some <div class="gmail_default" style="font-size:small;display:inline">
</div>I missed:<br><br>Programming in Python 3, 2nd Edition - Mark Summerfield (Addison-Wesley, 2009) [1a]. Exercises. Solutions available online. At a quick glance I'd say the exercises are also better for the beginner. Less of a computer science orientation?<br>
<br>Learning Python, 4th Edition, Mark Lutz (Oreilly,2009) [1]. The 5th edition [2] is supposed to come out in June. Python 2.6 & 3.x. Has exercises at the end of every Part and answers in Appendix B. Also has "Test Your Knowledge" quizzes & answers. 1200+ pages! Too overwhelming for a first Python book? Ideal for a 2nd or 3rd however. <br>
<br>After seeing your response, I'd say, just one book isn't really going to work. So I would recommend:<br><br>1) Quickly go through Python for Kids. While it may say it's for kids, it actually covers quite a bit of ground (including writing a game using tkinter). I doubt it's so easy as to be boring. The lazy can also download sample code and solutions to the Programming Puzzles from the webpage.<br>
<br>2) Then Summerfield's Programming in Python 3. It has a lot more detail and also <div class="gmail_default" style="font-size:small;display:inline">spends time on the Python Standard Library.<br></div><br>Or maybe Think Python. A *lot* drier presentation than Python for Kids -- after all, the subtitle which I forgot to mention is "How to Think Like a Computer Scientist". Newer than Summerfield<div class="gmail_default" style="font-size:small;display:inline">
, but only 1/3 the length</div><div class="gmail_default" style="font-size:small;display:inline">. Since I've only skimmed both I find it hard to recommend one over the other.<br></div><br>3) Finally, when he *really* wants to learn all the gory details about Python programming, tackle Learning Python (and by that time hopefully the 5th edition will be out).<br>
<br>Once you've "learned" <div class="gmail_default" style="font-size:small;display:inline">P</div>ython then I would also recommend Programming Python, 4e - Mark Lutz (Oreilly,2010) [3] for detailed info on using some of the standard modules. Also Python Cookbook: Recipes for Mastering Python 3 - Beazley & Jone (OReilly, 2013) [4].<br>
<br>[Off Topic] --------<br><br>Depending on his age and what else he is learning at school, I also kinda think NumPy/SciPy/Matplotlib can be very enlightening.<br><br>SciPy and NumPy - E. Bressert (O'Reilly, 2013) [5]. A brief overview.<br>
<br>NumPy 1.5 Beginner's Guide - I. Idris (Packt, 2011) [6]<br><br>NumPy Cookbook - I. Idris (Packt, 2012) [7]<br><br>Already started back in February and ending in a month, there is MIT's free online <div class="gmail_default" style="font-size:small;display:inline">
video </div>edX course "6.00x: Introduction to Computer Science and Programming" [8] which uses Python 2.7 and the book "Introduction to Computation and Programming Using Python (Spring 2013 edition)" by John Guttag [9]. This is also viewable free online if you are registered for the course. Estimated effort 12 hours/week, eeek!<br>
<br><br>[1a] <a href="http://www.qtrac.eu/py3book.html">http://www.qtrac.eu/py3book.html</a><br><br>[1] <a href="http://shop.oreilly.com/product/9780596158071.do">http://shop.oreilly.com/product/9780596158071.do</a><br><br>
[2] <a href="http://shop.oreilly.com/product/0636920028154.do">http://shop.oreilly.com/product/0636920028154.do</a><br><br>[3] <a href="http://shop.oreilly.com/product/9780596158118.do">http://shop.oreilly.com/product/9780596158118.do</a><br>
<br>[4] <a href="http://shop.oreilly.com/product/0636920027072.do">http://shop.oreilly.com/product/0636920027072.do</a><br><br>[5] <a href="http://shop.oreilly.com/product/0636920020219.do">http://shop.oreilly.com/product/0636920020219.do</a><br>
<br>[6] <a href="http://www.packtpub.com/numpy-1-5-using-real-world-examples-beginners-guide/book">http://www.packtpub.com/numpy-1-5-using-real-world-examples-beginners-guide/book</a><br><br>[7] <a href="http://www.packtpub.com/numpy-for-python-cookbook/book">http://www.packtpub.com/numpy-for-python-cookbook/book</a><br>
<br>[8] <a href="https://www.edx.org/courses/MITx/6.00x/2013_Spring/about">https://www.edx.org/courses/MITx/6.00x/2013_Spring/about</a><br><br>[9] <a href="http://mitpress.mit.edu/books/introduction-computation-and-programming-using-python">http://mitpress.mit.edu/books/introduction-computation-and-programming-using-python</a><br>
</div><br></div>