Differences between revisions 80 and 90 (spanning 10 versions)
Revision 80 as of 2015-07-11 05:35:49
Size: 9429
Comment: fix typo; add language info
Revision 90 as of 2016-08-02 23:06:34
Size: 10450
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
These books can be bought in hard copy, but are also available online for free.
/* please keep this list alphabetized */
Each of these books can be purchased online and is also available as a completely free website. /* please keep this list alphabetized */
Line 8: Line 7:
 * [[http://openbookproject.net/thinkcs/python/english2e/|How to Think Like a Computer Scientist (2nd ed.)]] by Elkner, Downey, and Meyers is an open-source book. (Python 2)
 * [[http://learnpythonthehardway.org/book/|Learn Python The Hard Way]] The title is a misnomer. It would be better titled "Learn Python By Coding It." The author determined that learning python should be similar to learning an instrument. You don't get a book on scales, but you're taught a scale and practice it. The author teaches you how to code properly, how to think like a programmer, and develop quality problem solving skill through a set of 52 exercises that build on each other. (Python 2)
 * [[http://inventwithpython.com/pygame|Making Games with Python & Pygame]] by Al Sweigart (Python 3) introduces the Pygame framework for novices and intermediate programmers to make graphical games. The same author has written [[http://inventwithpython.com/bookshelf/|many other excellent free books]]
 * '''Automate the Boring Stuff with Python - Practical Programming for Total Beginners''' by ''Al Sweigart'' is "written for office workers, students, administrators, and anyone who uses a computer to learn how to code small, practical programs to automate tasks on their computer." ||Python 3 ||[[https://automatetheboringstuff.com/|website]] ||[[http://www.amazon.com/gp/product/1593275994/|print version]] ||

 * '''How To Think Like a Computer Scientist''' is a classic open-source book by ''Allen Downey'' with contributions from ''Jeffrey Elkner'' and ''Chris Meyers''. It was updated to Python 3 by ''Peter Wentworth.'' ||Python 2 ||[[http://openbookproject.net/thinkcs/python/english2e/|website]] ||[[http://amzn.to/Owtmjy|print version]] || ||Python 3 ||[[http://openbookproject.net/thinkcs/python/english3e/|website]] ||[[http://openbookproject.net/thinkcs/python/english3e/|print version]] ||

 * '''Making Games with Python & Pygame''' by ''Al Sweigart'' introduces the Pygame framework for novices and intermediate programmers to make graphical games. ||Python 3 ||[[http://inventwithpython.com/pygame|website]] ||[[http://www.amazon.com/Making-Games-Python-Pygame-Sweigart/dp/1469901730?ie=UTF8&tag=playwithpyth-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0982106017|print version]] ||
Line 18: Line 19:
 * [[http://http://cscircles.cemc.uwaterloo.ca/|Computer Science Circles]] has 30 lessons, 100 exercises, and a message system where you can ask for help. Teachers can use it with their students. It is also available in Dutch, French, German and Lithuanian. (Python 3)  * [[http://cscircles.cemc.uwaterloo.ca/|Computer Science Circles]] has 30 lessons, 100 exercises, and a message system where you can ask for help. Teachers can use it with their students. It is also available in Dutch, French, German and Lithuanian. (Python 3)
Line 21: Line 22:
 * [[https://www.speltechnologies.com/bookdemo|Python story-based game]] (Python 2) Merscythe: Adventures with the Codue is a story-based game for learning Python. The tutorials provide feedback and hints.
Line 28: Line 30:
 * [[https://www.speltechnologies.com/bookdemo|Python story-based game]] (Python 2) Merscythe: Adventures with the Codue is a story-based game for learning Python. The tutorials provide feedback and hints.
Line 32: Line 35:
 * [[http://swaroopch.com/notes/python/|A Byte of Python]], by Swaroop C.H., is also an introductory text for people with no previous programming experience. (Python 3)  * [[http://swaroopch.com/notes/python/|A Byte of Python]], by Swaroop C.H., is also an introductory text for people with no previous programming experience. (Python 2)
Line 34: Line 37:
 * [[http://askpython.com/|Ask Python]] Absolute Beginners Python Tutorial (Python 3)
Line 42: Line 46:
 * [[http://thepythonguru.com/|The Python Guru]] A beginner friendly guide for aspiring programmers.
Line 44: Line 49:
/* please keep this list alphabetized */
These websites are written in support of science courses, but are general enough that anyone can learn from them.
/* please keep this list alphabetized */ These websites are written in support of science courses, but are general enough that anyone can learn from them.
Line 57: Line 61:

== Tools ==
 * [[http://thonny.cs.ut.ee|Thonny, Python IDE for beginners]]
Line 76: Line 83:

Python for Non-Programmers

If you've never programmed before, the tutorials on this page are recommended for you; they don't assume that you have previous experience. If you have programming experience, also check out the BeginnersGuide/Programmers page.

Books

Each of these books can be purchased online and is also available as a completely free website.

  • Automate the Boring Stuff with Python - Practical Programming for Total Beginners by Al Sweigart is "written for office workers, students, administrators, and anyone who uses a computer to learn how to code small, practical programs to automate tasks on their computer." ||Python 3 ||website ||print version ||

  • How To Think Like a Computer Scientist is a classic open-source book by Allen Downey with contributions from Jeffrey Elkner and Chris Meyers. It was updated to Python 3 by Peter Wentworth. ||Python 2 ||website ||print version || ||Python 3 ||website ||print version ||

  • Making Games with Python & Pygame by Al Sweigart introduces the Pygame framework for novices and intermediate programmers to make graphical games. ||Python 3 ||website ||print version ||

Interactive Courses

These sites give you instant feedback on programming problems that you can solve in your browser.

K-12 Oriented (for Children)

  • Build a "Pypet" Learn programming fundamentals in Python while building a tamagotchi style "Pypet" by Tatiana Tylosky.

  • Guido van Robot A teaching tool in which students write simple programs using a Python-like language to control a simulated robot. Field-tested at Yorktown High School, the project includes a lesson plan.

  • PythonTurtle A learning environment for Python suitable for beginners and children, inspired by Logo. Geared mainly towards children, but known to be successful with adults as well.

  • Python story-based game (Python 2) Merscythe: Adventures with the Codue is a story-based game for learning Python. The tutorials provide feedback and hints.

Tutorials and Websites

  • A Byte of Python, by Swaroop C.H., is also an introductory text for people with no previous programming experience. (Python 2)

  • After Hours Programming Python 3 Tutorial (Python 3)

  • Ask Python Absolute Beginners Python Tutorial (Python 3)

  • Instant Hacking A minimal crash course by Magnus Lie Hetland that's an excellent starting point. (Python 2)

  • Learning to Program An introduction to programming for those who have never programmed before, by Alan Gauld. It introduces several programming languages but has a strong emphasis on Python. (Python 2 and 3)

  • The Wikibooks Non-Programmer's Tutorial for Python by Josh Cogliati is available for both Python 2 and Python 3.

  • One Day of IDLE Toying A very gentle introduction to the IDLE development environment that comes with Python. This tutorial by Danny Yoo has been translated into nine different languages. (Python 2)

  • The Python tips blog includes Python tips and tutorials for beginners and professional programmers.

  • There is a Python Tutorial in Python's documentation set. It's not written with non-programmers in mind, but it will give you an idea of the language's flavor and style. It is available for both Python 2 and Python 3.

  • The Python-Course.eu website has an extensive tutorial for complete beginners, in both Python 2 and Python 3, with lots of illustrations.

  • Pythonspot Tutorials Python tutorials.

  • The Python Guru A beginner friendly guide for aspiring programmers.

Tutorials for Scientific Audiences

These websites are written in support of science courses, but are general enough that anyone can learn from them.

  • Beginning Python for Bioinformatics by Patrick O'Brien. An introduction to Python aimed at biologists that introduces the PyCrust shell and Python's basic data types.

  • Handbook of the Physics Computing Course Also available in various forms at the author's Python in Education page, this is a preliminary course handbook for 1st-year university students with no computing experience. This course material is still preliminary and assumes some high school-level maths. It does not cover object-oriented programming or graphical applications. (Python 2)

  • Pasteur Institute courses are aimed at biologists but are useful to anyone wanting to learn Python. Introduction to Programming using Python is for people completely new to programming.

  • The Programming Historian is a tutorial-style introduction to programming for practicing historians. It assumes that you're starting out with no prior programming experience and only a basic understanding of computers. (Python 2)

Videos

Tools

BeginnersGuide/NonProgrammers (last edited 2023-03-03 16:42:03 by AdamEmery)

Unable to edit the page? See the FrontPage for instructions.