Differences between revisions 120 and 121
Revision 120 as of 2020-08-18 12:53:03
Size: 11508
Comment: beginner blog added
Revision 121 as of 2020-08-18 18:27:30
Size: 11674
Editor: eriky
Comment: fixed language here and there, added python3.guide beginner tutorial
Deletions are marked like this. Additions are marked like this.
Line 34: Line 34:
 * [[https://hackinscience.org|HackInScience]] - 50+ Python exercises on a free, adless, simple, and open source platform.  * [[https://hackinscience.org|HackInScience]] - 50+ Python exercises on a free, adless, simple, and open-source platform.
Line 70: Line 70:
 * [[https://hackr.io/tutorials/learn-python|Hackr.io - Python]]: Programming community recommended best Python tutorials and courses  * [[https://hackr.io/tutorials/learn-python|Hackr.io - Python]]: Programming community-recommended best Python tutorials and courses
Line 86: Line 86:
 * The [[https://python3.guide/|Python 3 Guide]] is a beginner-friendly guide to Python, that starts with the absolute basics but goes on to more advanced stuff as well
Line 94: Line 96:
 * [[https://coderslegacy.com|CodersLegacy]] A website + blog geared towards both new and experianced programmers. Mainly focused towards teaching Python.  * [[https://coderslegacy.com|CodersLegacy]] A website + blog geared towards both new and experienced programmers. Mainly focused on teaching Python.
Line 101: Line 103:
/* 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 105: Line 107:
 * [[http://illustratedtheoryofnumbers.com/prog.html|Python for Number Theory]] is a series of Python notebooks (for Jupyter) for applications to number theory and cryptography. They assume no prior programming experience, and are suitable for someone learning elementary number theory at the same time. They conclude with an introduction to primality testing and cryptography (Diffie-Hellman, RSA).  * [[http://illustratedtheoryofnumbers.com/prog.html|Python for Number Theory]] is a series of Python notebooks (for Jupyter) for applications to number theory and cryptography. They assume no prior programming experience and are suitable for someone learning elementary number theory at the same time. They conclude with an introduction to primality testing and cryptography (Diffie-Hellman, RSA).
Line 122: Line 124:
If these sites come back to life, feel free to move them back up. Perhaps after 6 months it would be reasonable to delete them. If these sites come back to life, feel free to move them back up. Perhaps after 6 months, it would be reasonable to delete them.

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." ||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. ||website ||print version ||

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

You can find many free Python books online. For example, check out this article with 101 free Python books.

Interactive Courses

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

  • CheckiO is a gamified website containing programming tasks that can be solved in Python 3.

  • Codecademy (Python)

  • Code the blocks combines Python programming with a 3D environment where you "place blocks" and construct structures. It also comes with Python tutorials that teach you how to create progressively elaborate 3D structures.

  • 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.

  • DataCamp Python Tutorial Unlike most other Python tutorials, this 4 hour tutorial by DataCamp focuses on Python specifically for Data Science. It has 57 interactive exercises and 11 videos.

  • Finxter - How good are your Python skills? Test and Training with >300 hand-picked Python puzzles.

  • HackInScience - 50+ Python exercises on a free, adless, simple, and open-source platform.

  • How to Think Like a Computer Scientist: Interactive Edition is an interactive reimagination of Elkner, Downey and Meyer's book with visualizations and audio explanations.

Resources for Younger Learners

(This section was previously called "K-12 Oriented", K-12 being a USA-centric term which refers to the primary and secondary educational stages; through level 3 on the UNESCO ISCED education levels list.)

  • 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.

  • Python for Kids by Jason R Briggs. Book with sample code and puzzles.

  • 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.

  • Young Coders tutorial This is the full text of the tutorial taught annually at PyCon (North America), with examples and exercises throughout. This tutorial starts with basic skills and builds to working with complex logic and games. Appropriate for ages 10 and up, including adult beginners.

  • Webucator's self-paced Python 3 course free for homeschoolers and other students (use HOMESCHOOL as the coupon code when checking out). This course is appropriate for students 13 and up. From our experience, these students can learn at least as quickly as adults new to programming.

Tutorials and Websites

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.

  • Python for Number Theory is a series of Python notebooks (for Jupyter) for applications to number theory and cryptography. They assume no prior programming experience and are suitable for someone learning elementary number theory at the same time. They conclude with an introduction to primality testing and cryptography (Diffie-Hellman, RSA).

  • Python for biologists

Videos

Tools


CategoryPythonInEducation CategoryPythonInEducation

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

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