Skip Navigation

Introduction to Python Programming for Middle School Students

 

 

Open to: Grades 6-8

Eligibility: CTY-level or Advanced CTY-level math score required

Prerequisites: A strong grasp of the English language is recommended.

Course Format: Individually Paced

Course Length: Typically 3 months

Course Code: IPM

Course Description

Description

This course introduces students to the exciting world of programming using the Python language. Students will gain a basic understanding of object-oriented programming and enhance their critical thinking and problem-solving skills as they learn to design, code, and debug Python programs. Challenging assignments encourage them to master important programming concepts such as variables, operators, and control flow constructs. Students will use their creativity and imagination to draw different shapes on the computer screen and work with Turtle Graphics. They will also discover how to use functions to reuse code and how to read and write to files. While no prior programming experience is required, some exposure to programming languages may help students succeed in this highly challenging course. Parental support may be needed. By the end of the course, students will be able to apply the basic programming principles they mastered to learn other programming languages.

 

Materials Needed

Students will need to download the latest version of Python for free.

The required course textbook is:

Python for Kids: A Playful Introduction To Programming, by Jason R. Briggs. ISBN 78-1593274078

References and supplementary readings will be provided, where required, on the course website.

Detailed Course Information

Getting Started

  • History of Python
  • Sample Python projects
  • Writing your first program
  • Saving and opening programs
  • Using comments

Moving your Turtle

  • Using the turtle module- pen()
  • Using the turtle module – forward(), backward(), left(), and right()
  • Changing the pen size and color
  • Penup() and pendown()
  • Drawing circles

Math and Variables

  • Operators and Order of Operations
  • Variables
  • Revisiting the turtle with variables

Strings

  • Creating strings
  • Multi-line strings
  • Quotation marks inside strings
  • Embedding values inside strings
  • Multiplying strings
  • Using the input() function
  • Converting strings to numbers
  • Concatenating strings

Reusing Code with Functions and Modules

  • Defining a function
  • Using functions
  • Returning a value
  • Variables and scope
  • Modules

Conditional Statements

  • If statements
  • If-then-else statements
  • If and elif statements
  • Multiple conditions and multiple if statements

Loops

  • Using for loops
  • Creating while loops
  • Nesting loops
  • Using the break command and avoiding infinite loops

Using the Turtle with Loops and Functions

  • Drawing with loops
  • Drawing with Functions
  • Adding more color
  • Drawing spirals

Data Structures

  • Lists
  • Maps

Introduction to Object Oriented Programming

  • Introduction to Object Oriented Programming
  • Classes and Objects
  • Instance Variables and Methods
  • Class Variables
  • Special Method Names
  • Class Containment and Default Parameters
  • Inheritance

Built-in Functions

  • Helpful built-in functions

Working with Files

  • Creating a file
  • Opening a file in Python
  • Writing to a file

Technical Requirements

This course requires a properly maintained computer with high-speed internet access and an up-to-date web browser (such as Chrome or Firefox). The student must be able to communicate with the instructor via email. Visit the Technical Requirements and Support page for more details.

Zoom online virtual classroom
This course uses an online virtual classroom for discussions with the instructor. The classroom works on standard computers with the Zoom desktop client and also tablets or handhelds that support the Zoom Mobile app. Students who are unable to attend live sessions will need a computer with the Zoom desktop client installed to watch recorded meetings. The Zoom desktop client and Zoom Mobile App are both available for free download.

Most course lectures may be viewed on mobile devices, but in some cases assignments and quizzes must be completed on a desktop or laptop computer.

Chromebooks are not recommended due to required downloading of specialized software.

This course uses Respondus LockDown Browser proctoring software for designated assessments. LockDown Browser is a client application that is installed to a local computer. Visit the Respondus website for system requirements.

While Chromebook can be used to progress through the course, all exams must be completed on a PC or Mac.