Introduction to Programming with Python

Introduction to Programming with Python


This course is a practical and beginner-friendly introduction to programming using the Python language. By the end of this course, you will learn how to use the Python programming language for solving real-world problems.

Lesson 1 - Variables, Operators, and Data Types

  • Introduction to Python & Jupyter notebooks
  • Arithmetic, conditional & logical operators
  • Variables and common data types in Python

Lesson 2 - Branching, Loops, and Functions

  • Branching with if, elif and else
  • Iteration with while and for loops
  • Functions, scope, and exceptions

Assignment 1 - Python Programming Practice

  • Solve word problems with arithmetic operations
  • Manipulate data types with methods & operators
  • Use branching and iteration to analyze data

Lesson 3 - Web Scraping and REST APIs

  • Reading from and writing to CSVs
  • Downloading files and web pages
  • Extracting information from HTML

Assignment 2 - Sudoku Solver in Python

  • Reading Sudoku puzzles from a file
  • Performing validations using functions
  • Recursive solution with backtracking

Documentation and Storytelling

  • Improving clarity and readability of code
  • Documenting notebooks using Markdown
  • Storytelling techniques for improving projects

Assignment 3 - Web Scraping Practice

  • Select a website for scraping
  • Scrape and parse data from the site
  • Write the results to CSV files

Lesson 6 - Solving Programming Challenges

  • Finding practice problems online
  • Approaching LeetCode problems
  • Debugging and fixing errors

Lesson 4 - Local Development with Conda & Git

  • Local development environment setup
  • Running Python scripts & notebooks
  • Managing large Python projects with Git

Workshop - Web Scraping with Selenium & AWS

  • Building Python projects with GitHub & Replit
  • Scraping dynamic websites using Selenium
  • Deploying to AWS and sending results via email

Object Oriented Programming with Python

  • Classes, objects, and inheritance
  • Class properties and methods
  • Exploring library source code