Introduction to the Course 
  How is Python used in the real world? 
  Introduction to Programming 
  Environment check for Windows 
  Environment check for Mac 
  Running code - Command line VS IDE 
  Python syntax spaces matter 
  User input console output 
  Math and logical operators 
  Control flow: If / else else if 
  Nested loops and the effect on algorithmic complexity 
  Module summary: Getting started with Python 
  How to be successful in this course 
  Installing Python paths (Optional for Windows Users) 
  Installing Python paths (Optional for Mac users) 
  Python syntax cheat sheet 
  Basic Data type and Function Cheatsheet 
  Type casting a deeper look 
  Looping Constructs: Practical Examples 
  Practicing control flow and loops 
  Exercise: Use control flow and loops to solve a problem 
  Use control flow and loops to solve a problem - solution 
  Module quiz: Getting started with Python 
  Knowledge check - Welcome to Python Programming 
  Self-review: Use control flow and loops to solve a problem 
  What do you hope to learn? 
  Module summary: Basic Programming with Python 
  Function and variable scope 
  What are data structures? 
  Choosing and using data structures 
  Visual Studio Code on Coursera 
  Exercise: Exceptions in Python 
  Exceptions in Python - solution 
  Storing file contents in data structures 
  Module quiz: Basic Programming with Python 
  Functions loops and data structures 
  Knowledge check: Functions and Data structures 
  Read in data store manipulate and output new data to a file 
  Functions loops and data structures 
  Read in data store manipulate and output new data to a file 
  What is procedural programming? 
  What is functional programming? 
  Reversing a string on Python 
  Introduction to Object Oriented Programming 
  Python classes and instances 
  Instantiate a custom Object 
  Parent classes vs. child classes 
  Abstract classes and methods 
  Module summary: Programming paradigms 
  Exercise: Make a cup of coffee 
  Make a cup of coffee - solution 
  Recursion example: Tower of Hanoi 
  Define a Class - solution 
  Exercise: Instantiate a custom Object 
  Instantiate a custom Object - solution 
  Inheritance and Multiple Inheritance 
  Exercise: Classes and object exploration 
  Working with Methods: Examples 
  Exercise: Working with Methods 
  Working with Methods - solution 
  Module quiz: Programming Paradigms 
  Self-review: Make a cup of coffee 
  Knowledge check: Procedural Programming 
  Mapping key values to dictionary data structures 
  Knowledge check: Functional Programming 
  Self-review: Define a Class 
  Self-review: Instantiate a custom Object 
  Abstract classes and methods 
  Self-review: Working with Methods 
  Mapping key-values to Dictionary data structures 
  Abstract Classes and Methods 
  What is a module in Python? 
  Writing import statements 
  Popular packages: NumPy pandas Matplotlib etc 
  Machine learning deep learning and AI: PyTorch TensorFlow 
  Writing tests with PyTest 
  Test-driven development (TDD) 
  Module summary: Modules packages libraries and tools 
  Popular Packages: Examples 
  Big Data and Analysis with Python 
  Module quiz: Modules packages libraries and tools 
  Knowledge check: Popular Packages Libraries and Frameworks 
  What do you consider to be the difference between machine learning and AI? 
  Course Recap: Programming in Python 
  Congratulations you have completed Programming in Python 
  About the End-of-Course Graded Assessment 
  Next steps after Programming in Python 
  End-of-Course Graded Assessment: Using Python 
  Discuss challenges that you had with your fellow learners 
  What did you find most challenging about learning to program in Python?