English
Log In
Python Programming | Beginner | 20 Week SP | Automate Awesome
Class experience
Welcome to Python Programming Semester Self Paced Class - 20 Weekly Modules - Automate Awesome! In this semester length course, we are going to cover Python programming from the very beginning and work our way towards more complex and intricate programs. This is a great course for those with programming experience or students that are starting from scratch. Our goal is to introduce various programming methods and techniques as we build examples that have real-world applications. Programming...
20 lessons//20 Weeks
Week 1Lesson 1Python BasicsThis module introduces Python's syntax, data types, and basic operations. You'll learn about variables, basic arithmetic, data types, and working with text.Week 2Lesson 2Flow ControlLearn about control structures like if-else statements, for and while loops, and conditional expressions. Gain skills in controlling the flow of your programs.Week 3Lesson 3FunctionsThis module covers defining and using functions in Python. You'll understand parameters, return values, and the concept of scope for efficient code reuse.Week 4Lesson 4ListsExplore Python lists, including creating, modifying, and iterating over them. You'll learn list operations, comprehensions, and common list functions.Week 5Lesson 5Dictionaries and Structuring DataLearn about dictionaries and their uses in Python. You'll also cover tuples and sets, focusing on structuring data effectively within your programs.Week 6Lesson 6Manipulating StringsDiscover how to manipulate strings in Python. Topics include string slicing, formatting, and common string methods for data processing and output.Week 7Lesson 7Pattern Matching with Regular ExpressionsUnderstand regular expressions for pattern matching in text. This module covers creating and using regular expressions to find and manipulate text patterns.Week 8Lesson 8Input ValidationLearn how to validate user input for safety and correctness. This module covers common techniques to ensure your programs handle data input securely.Week 9Lesson 9Reading and Writing FilesGain skills in reading and writing data to files. You'll work with different file types, understand file paths, and learn about file handling best practices.Week 10Lesson 10Organizing FilesThis module teaches techniques for organizing files and directories in Python. Topics include navigating file systems and performing file operations.Week 11Lesson 11Debugging CodeLearn strategies for debugging Python code. You'll explore common errors, use debugging tools, and develop problem-solving skills to fix issues in your programs.Week 12Lesson 12Web ScrapingThis module covers web scraping using Python libraries. Learn to extract data from web pages, handle HTTP requests, and work with web content effectively.Week 13Lesson 13Working with Excel SpreadsheetsUnderstand how to work with Excel files in Python. Topics include reading and writing Excel data, creating spreadsheets, and manipulating Excel structures.Week 14Lesson 14Working with Excel FilesLearn to integrate Python with Excel.Week 15Lesson 15Working with PDF and Word DocumentsGain skills in working with PDF and Word documents in Python. You'll explore reading and creating PDF files, as well as manipulating Word documents.Week 16Lesson 16Working with CSV Files and JSON DataThis module teaches how to work with CSV and JSON data. Topics include reading, writing, and parsing these file formats to extract and process data.Week 17Lesson 17Keeping Time, Scheduling Tasks, and Launching ProgramsExplore Python's time-related functions, including scheduling tasks and automating program launches. Learn to work with time-based operations and scheduling libraries.Week 18Lesson 18Sending Email and Text MessagesLearn to automate sending emails and text messages in Python. This module covers SMTP and other protocols, focusing on programmatic communication.Week 19Lesson 19Manipulating ImagesUnderstand how to manipulate images in Python. This module covers common image processing tasks, including resizing, cropping, and basic image editing.Week 20Lesson 20Controlling the Keyboard and Mouse with GUI AutomationLearn to automate GUI interactions using Python. This module covers controlling the keyboard and mouse to simulate user input for task automation.
In this semester length course, we are going to cover Python programming from the very beginning and work our way towards more complex and intricate programs. This is a great course for those with programming experience or students that are starting from scratch. Our goal is to introduce various programming methods and techniques as we build examples that have real-world applications. Programming is a superpower for the future, and students will look at many different ways to interact with the world, gather and analyze data, manipulate various elements using programming, and ultimately gain a deep insight into the Python programming language and how to build programs that do something. This course is divided into two parts, the first part is composed of 6 modules on the basics of Python programming, which will go over data structures and various types of programs, which will serve as a refresher for those who have python experience, or an introduction for those who are new to programming. No knowledge of programming is required to get started with this course, our goal is to work through the tools we need in the first part of the course so we can experiment with amazing projects in the latter 14 modules.
I love teaching programming using fun and interesting examples because it helps students go farther than learning hard to contextualize concepts. Understanding what we are doing and why means that students will be able to apply algebraic concepts (like x+y) having understood examples like (red bike + blue bike) in a way that has context and meaning.
Homework Offered
Each module of the course will involve reading approximately 10 pages, working through the video and code examples provided with the module, and uploading homework for each module. Many of the modules build on each other, so it is important to complete each module before working on the next. Homework should take approximately one to two hours per week, in addition to the one to two hours required to work through each module. This may take longer depending on the complexity of the module, and the code that the student is interested in working on. There will be a homework assignment provided for each module of the course, students can work on their own version of the topics that are being covered using the sample provided code or come up with their own unique idea. The goal is to spend time programming each week and incrementally build their coding skills.1 - 2 hours per week outside of class
Assessments Offered
All submissions to the classroom or the teacher section for weekly submissions will be reviewed and feedback will be provided. Feedback is generally given either as an informal assessment, or with a video, of course, if students run into problems with their code, they are more than welcome to send in any issues, which will be promptly addressed.Grades Offered
We will be using the Automate the Boring Stuff with Python, 2nd Edition Practical Programming for Total Beginners book by Al Sweigart book in the course. November 2019, 592 pp. ISBN-13: 9781593279929 We will be using Repl.it for the majority of the course, some modules may require the student to use Python locally (for example, some elements like opening the web browser can only be done locally), directions and detailed instructions will be provided.
In addition to the Outschool classroom, this class uses:
Replit.com is a cloud-based platform that allows users to write, run, and share code in various programming languages. It's designed for easy collaboration and quick prototyping, making it a popular tool for both beginners and experienced developers. Automate the Boring Stuff is a website and book by Al Sweigart that provides tutorials and projects on automating common tasks using Python, aimed at beginners and those seeking practical programming skills. Both resources are free to use, and they don't require creating an account.
Welcome! We offer fun and engaging social science and technology classes. You can use technology to do some pretty amazing things, and it's a lot less scary than it seems—our courses range from social science (like sociology and marketing) to...
Self-Paced Class
$18
weekly or $349 for all content20 pre-recorded lessons
20 weeks of teacher feedback
Choose your start date
1 year of access to the content
Completed by 24 learners
Ages: 13-18