• Free

Python for non-programmers

Want to learn programming, and aren't sure where to start? This 15-part course will get you where you need to go.

It was originally recorded over 15 weeks in the spring-summer of 2020. Homework exercises are no longer in the forum, but printed at the bottom of each lesson. 

Enjoy!

FAQs

What is this course?

As the name implies (or even states), this is a Python programming class aimed at people with little or no programming experience.  We'll use the Python language, which is one of the most popular languages currently used by professional developers.

Who are you?

I'm Reuven Lerner, a professional Python trainer. That means I spend just about every day teaching Python to a different company, in a different city, or even a different country.  (In 2019, I taught in the US, Europe, Israel, India, and China.)

I've been using Python since about 1992, have had my own consulting business since 1995, and have been training full time for more than 10 years.

I've spoken at PyCon and Euro Python, among other places. I'm a podcaster and author of "Python Workout" and also "Pandas Workout," both published by Manning.

You can learn more about me at my site, https://lerner.co.il/ .

How much does it cost?

It's 100% free.  As in, I won't charge anything for this course. Ever.

When does the course take place?

The course originally met on Fridays over the course of 16 weeks. (We took off one week for a holiday.) it is thus 15 hours long, with one hour per session.

There are no more live events scheduled, so you can watch the course at your own pace!

Can I tell my friends about this course?

Yes, please do!  The more, the merrier.

I took a programming course in college, and hated it. Plus, I was bad at it. Can I do this?

Yes, I'm sure that you can!

We're taking it slowly and easily, and I actively encourage people to ask questions. You might need to put in some work, but I promise that you can do this.

Contents

About this course
Preview

Lesson 1: Python fundamentals. (March 20, 2020)

What's programming? What's Python? How can we display things on the screen, print things for the user, and even make decisions?

Note: Throughout the course, I use the Jupyter notebook for live coding. You can download my notebooks (the files with an ".ipynb" extension) from this site -- but to use them, you'll need to install Python and Jupyter.

To install Python, go to https://www.python.org/downloads/.  The big yellow button will likely be right for your computer and operating system. Install it, and you now have Python on your computer!

You'll then want to install Jupyter on your computer. This will require using a terminal (aka shell or cmd), and typing some commands. Which commands? Here's a video that explains what to do: https://www.youtube.com/watch?v=i2zM8OwxZok

With Python and Jupyter installed, and Jupyter running, you can then download and use the notebook files that are here.

Having problems? Please contact me at reuven@lerner.co.il, or as @reuvenmlerner on Twitter. I want to help!
Non-programmers 2020 March 20.ipynb
Lesson 1, 2020 March 20.mp4

Lesson 2: Decisions with if (March 27, 2020)

Non-programmers 2020 March 27.ipynb
Lesson 2, 2020 March 27.mp4

Lesson 3: Numbers (April 3, 2020)

Non-programmers 2020 April 3.ipynb
Lesson 3, 2020 April 3.mp4

Lesson 4: Strings (April 10, 2020)

Non-programmers 2020 April 10.ipynb
Lesson 4, 2020 April 10

Lesson 5: Methods (April 17, 2020)

Non-programmers 2020 April 17.mp4
Lesson 5 -- 2020 April 17.ipynb

Lesson 6: Loops (April 24, 2020)

Lesson 6 -- 2020 Apr 24.ipynb
Lesson 6, 2020 April 24.mp4

Lesson 7: Lists (May 1, 2020)

Lesson 7 -- 2020 May 1.ipynb
Lesson 7 -- 2020 May 1.mp4

Lesson 8: Lists to strings, and back! (May 8, 2020)

Non-programmers, 2020 May 8.ipynb
Lesson 8 -- 2020 May 8.mp4

Lesson 9: Dictionaries (May 15, 2020)

Lesson 9 -- 2020 May 15.ipynb
Lesson 9 -- 2020 May 15.mp4

Lesson 10: Files (May 22, 2020)

Lesson 10 -- 2020 May 22.ipynb
Lesson 10 -- 2020 May 22.mp4
exercise-files.zip

Lesson 11: Writing to files (June 5, 2020)

Lesson 11 -- 2020 June 5.ipynb
Lesson 11 -- 2020 June 5.mp4

Lesson 12: Functions (June 12, 2020)

Lesson 12 -- 2020 June 12.ipynb
Lesson 12 -- 2020 June 12.mp4

Lesson 13: More functions (June 19, 2020)

Lesson 13 -- 2020 June 19.ipynb
Lesson 13 -- 2020 June 19.mp4

Lesson 14: Modules and packages

Lesson 14 -- 2020 June 26.ipynb
Lesson 14 -- 2020 June 26.mp4

Lesson 15: Where to from here?

Lesson 15 -- 2020 July 3.ipynb
Lesson 15 -- 2020 July 3.mp4