Summer schedule is now available! Enroll today to secure your spot!

Need Help?

Need help finding the right class? Have a question about how classes work?

Click here to Ask AoPS!

Intermediate Programming with Python

This course covers intermediate programming concepts such as recursion, object-oriented programming, graphical user interfaces, and event-driven programming.

12 weeks

Diagnostics

ARE YOU READY? DO YOU NEED THIS?

Documents

SYLLABUS
12 weeks ARE YOU READY? DO YOU NEED THIS? SYLLABUS  

Schedule

Sunday
Jan 7 - Mar 24
7:30 - 9:00
PM ET
Jan 7 - Mar 24
7:30 - 9:00 PM Eastern
6:30 - 8:00 PM Central
5:30 - 7:00 PM Mountain
4:30 - 6:00 PM Pacific
Click here to see more time zones
$545 (~$46/week)
$545 (~$46/week)
CLOSED
Thursday
Mar 14 - May 30
7:30 - 9:00
PM ET
Mar 14 - May 30
7:30 - 9:00 PM Eastern
6:30 - 8:00 PM Central
5:30 - 7:00 PM Mountain
4:30 - 6:00 PM Pacific
Click here to see more time zones
$545 (~$46/week)
$545 (~$46/week)
ENROLL
Sunday
Jun 2 - Aug 18
7:30 - 9:00
PM ET
Jun 2 - Aug 18
7:30 - 9:00 PM Eastern
6:30 - 8:00 PM Central
5:30 - 7:00 PM Mountain
4:30 - 6:00 PM Pacific
Click here to see more time zones
$545 (~$46/week)
$545 (~$46/week)
ENROLL
Tuesday
Jun 18 - Sep 3
7:30 - 9:00
PM ET
Jun 18 - Sep 3
7:30 - 9:00 PM Eastern
6:30 - 8:00 PM Central
5:30 - 7:00 PM Mountain
4:30 - 6:00 PM Pacific
Click here to see more time zones
$545 (~$46/week)
$545 (~$46/week)
ENROLL

AoPS Holidays

There are no classes May 25 ‐ 27, July 4, August 30 ‐ September 2, and November 25 ‐ December 1.

Who Should Take?

This course assumes that students have prior experience programming in Python. Specifically, students taking this course should be familiar with Python's built-in data types (including lists, tuples, and dictionaries), Python's conditional and flow-of-control structures (including if/elif/else, for, and while), and Python's input/output functions (including print, input, and file reading and writing). Students who are familiar with these concepts in another programming language but not in Python should learn the Python equivalents prior to taking this class.

Students with no prior programming experience should instead consider our Introduction to Programming with Python course.

We will be providing a free online textbook for this class, which students can access from the class homepage. Students will also need to download free Python software onto their computers. We will provide detailed instructions for how to install this software prior to the beginning of the course.

Lessons

Lesson 1 Review of Python Basics and Programming Basics
Lesson 2 Recursion
Lesson 3 Classes and Object-Oriented Programming (OOP)
Lesson 4 More OOP
Lesson 5 Still More OOP!
Lesson 6 Inheritance
Lesson 7 Event-Driven Programming and GUIs
Lesson 8 More with GUIs
Lesson 9 Project Week 1
Lesson 10 Project Week 2
Lesson 11 Game Design Week 1
Lesson 12 Game Design Week 2

THIS WAS A LOT OF FUN! I learned a lot during this class and Intro to Python; why, before I couldn't even formalize an algorithm! All programs we made were very fun and I can't ever remember getting bored; plus, I felt pretty sad when I was going to miss a class because of vacation. . . I really don't have any suggestions to make this class better. As far as I'm concerned, it is the best it ever needs to be. I'm definitely going to take another class, and I bet it's going to be as good as this one!