Python is an easy-to-learn and versatile coding language. Python has been used to create many applications we use today including Reddit, Spotify, and Youtube. This course is unique as it strays away from our traditional CORE Java offerings and may be a good fit for students who want to take a break from Java, eventually take our Machine Learning Research classes, or just want to learn to python for any other computer science goal. This Python 1 class covers the basic syntax of the Python programming language and uses the development environment of Jupyter Notebooks. It is taught in a lecture form, where students take their own notes, with practice problems and projects integrated throughout.
Python is an easy-to-learn and versatile coding language. Python has been used to create many applications we use today including Reddit, Spotify, and Youtube. This course is unique as it strays away from our traditional CORE Java offerings and may be a good fit for students who want to take a break from Java, eventually take our Machine Learning Research classes, or just want to learn to python for any other computer science goal. This Python 1 class covers the basic syntax of the Python programming language and uses the development environment of Jupyter Notebooks. It is taught in a lecture form, where students take their own notes, with practice problems and projects integrated throughout.
10 years or older with a basic understanding of coding fundamentals using KTBlocks, Scratch, or typed-out code.
10 years or older with a basic understanding of coding fundamentals using KTBlocks, Scratch, or typed-out code.
Introduction to Python and Our Development Environment
We will be covering the basics of python setup and talking about the applications of this coding language. We will set up our development environment using Jupyter Notebook where we will write code during class and for homework.
Inputting, Printing, Data Types, Operations on Numbers
Today we explore how we can use python to make the computer ask us a question by entering input data. This is a key feature useful for projects later in the semester. We will also cover different types of data and do a deep dive into using numbers and math in our code.
Strings
This lesson focuses on the String data type that helps us manipulate text in our code. We will learn how to concatenate, index, and format strings.
Booleans and If Statements
Next we'll be tackling the boolean data type, which helps us write logic in code. Booleans allow us to use if statements (sometimes called conditionals) to write more advanced programs.
Functions and Basic Libraries
Now that we have a lot of tools, we want to start to learn techniques on how to make our code more clean and readable. We will learn how to create our own functions to accomplish this.
Intro to Data Structures - Lists
Moving on from the primitive data types, we will be starting to talk about more advanced “container” data structures. Lists (similar to arrays in Java or C++) help us manage a collection of items and keep our code organized
Starting Final Projects
Now that we have learned a lot about basic python syntax, students will be given the opportunity to brainstorm what they might be able to do as a project. Having this brainstorming class in the middle of the semester is unique to Python 1 and helps us see what goals students have for the rest of the course!
Loops
So far the only way we've to program repeated actions is by copying and pasting chunks of code. Now, we will learn a way to avoid this using for loops and while loops.
Tuples
Moving back into functions, this class will involve going through some more advanced problems and brainstorming solutions. We will also talk about returning more than one value from functions using a data structure called tuples.
Sets and Dictionaries
As we near the end of the semester, we will be using more advanced data structures called sets and dictionaries. We'll discuss when we might use these instead of other data structures like lists.
Review of Data Types and Intro to Classes
For our final topic, we will do a brief discussion about classes. We will also learn how we've been using classes all along without realizing it!
Classes Review, Using Classes - TKinter
Today we wrap up the course material with a review of classes and answering any lingering questions. Depending on the students' interest we may cover “Tkinter”, which is a graphical tool that could help with final projects.
Final Project
We will do a course review of the entire semester’s content. Students will then revisit their final project ideas and continue to make a plan for the last few lessons. Many students may decide to do a completely different project and that’s okay!
Introduction to Python and Our Development Environment
We will be covering the basics of python setup and talking about the applications of this coding language. We will set up our development environment using Jupyter Notebook where we will write code during class and for homework.
Inputting, Printing, Data Types, Operations on Numbers
Today we explore how we can use python to make the computer ask us a question by entering input data. This is a key feature useful for projects later in the semester. We will also cover different types of data and do a deep dive into using numbers and math in our code.
Strings
This lesson focuses on the String data type that helps us manipulate text in our code. We will learn how to concatenate, index, and format strings.
Booleans and If Statements
Next we'll be tackling the boolean data type, which helps us write logic in code. Booleans allow us to use if statements (sometimes called conditionals) to write more advanced programs.
Functions and Basic Libraries
Now that we have a lot of tools, we want to start to learn techniques on how to make our code more clean and readable. We will learn how to create our own functions to accomplish this.
Intro to Data Structures - Lists
Moving on from the primitive data types, we will be starting to talk about more advanced “container” data structures. Lists (similar to arrays in Java or C++) help us manage a collection of items and keep our code organized
Starting Final Projects
Now that we have learned a lot about basic python syntax, students will be given the opportunity to brainstorm what they might be able to do as a project. Having this brainstorming class in the middle of the semester is unique to Python 1 and helps us see what goals students have for the rest of the course!
Loops
So far the only way we've to program repeated actions is by copying and pasting chunks of code. Now, we will learn a way to avoid this using for loops and while loops.
Tuples
Moving back into functions, this class will involve going through some more advanced problems and brainstorming solutions. We will also talk about returning more than one value from functions using a data structure called tuples.
Sets and Dictionaries
As we near the end of the semester, we will be using more advanced data structures called sets and dictionaries. We'll discuss when we might use these instead of other data structures like lists.
Review of Data Types and Intro to Classes
For our final topic, we will do a brief discussion about classes. We will also learn how we've been using classes all along without realizing it!
Classes Review, Using Classes - TKinter
Today we wrap up the course material with a review of classes and answering any lingering questions. Depending on the students' interest we may cover “Tkinter”, which is a graphical tool that could help with final projects.
Final Project
We will do a course review of the entire semester’s content. Students will then revisit their final project ideas and continue to make a plan for the last few lessons. Many students may decide to do a completely different project and that’s okay!