Talk Python: Python for Absolute Beginners
Michael Kennedy
  • Course duration: 7h 11m
Talk Python: Python for Absolute Beginners is a new addition to the exciting Talk Python series from podcaster and software trainer Michael Kennedy. Aimed at learners who are brand new to programming, it’s filled with clear visuals, and hands-on exercises almost every chapter. You’ll start at the very beginning, learning the big ideas and concepts covered in a CS 101 course. Then you’ll move on to writing increasingly complex code and applications in Python, including fun games! If you never had that formal computer science background but need to jump into programming and Python, this course has your back.

Distributed by Manning Publications

This course was created independently by Python expert Michael Kennedy and is distributed by Manning through our exclusive liveVideo platform.

About the subject

Python is a simple and accessible programming language that’s perfect for beginners. It packs all the power, flexibility, and huge stack of tools and libraries to make it a premier modern language. Python skills are in high demand from industry and can easily be turned to a wide variety of tasks, from security scripting to machine learning.

About the video

Talk Python: Python for Absolute Beginners is a ground-up guide to software development using Python, for learners with no previous programming experience. It condenses core computer science concepts down into the need-to-know essentials, making sure you have the big concepts clearly covered before diving into writing code. You’ll learn how programmers approach problem solving, and then move on to writing your first Python apps. To build your skills, you’ll create several fun and challenging games including Tic-Tac-Toe and Connect4 clones, learning a wide range of topics relevant to professional projects.
Table of Contents detailed table of contents

Welcome to the course


Programming is a superpower

Why learn Python (over other languages)?

Student prerequisite knowledge

What will we cover?

How do I get help?

Meet your instructor: Michael Kennedy

Course setup and requirements

Installing and updating Python

Checking for Python on Windows

I do need to install Python, now what?

Setting up an editor

Git the source code

The big ideas of software development

The big ideas

Big idea: What is source code?

Examples of code

Big idea: How does code execute?

Code execution diagram

Source code vs. byte code

Big idea: Algorithms

Big idea: Designing an algorithm

Formal algorithms

Beginners and experts

A conversation with Python beginners

Writing your first lines of code

Writing code intro

unning the Python REPL on macOS

Running the Python REPL on Windows

Demo: Happy birthday to me

Concept: Concept sections

Concept: Variables and types

Visualizing variables

Visualizing mutable data types

Using a built-in library

Getting input from a user

Practice time!

Code that interacts with users

Interactive code intro

Our first interactive program

Creating a project with PyCharm

Determining the number of M&Ms

Getting the guess

Checking for a win

Exit early on a win

Using a debugger

Concept: Conditional statements

Concept: Truthiness

Concept: Multiple conditions to test at once

Practice time!

Organizing and reusing code with functions

Intro to functions


Demo: Starter Rock Paper Scissors

Checking for a win

Adding a computer opponent

Cleaning up Rock Paper Scissors with functions

Functions for play-game

A function for winning

Adding the best-of feature

Concept: A simple functions

Selecting the roll quickly

Concept: for-in loops

Practice time!

Cleaner code with common data structures

Introducing data structures

Our Rock Paper Scissors code has issues

Demo: Data structure basics (dicts, sets, lists)

Concept: Dictionaries

Demo: Better rules with dictionaries

Demo: Checking for winner with new rules

Improving win-tracking with dictionaries

Concept: Data structures simplify our code

Concept: Common data structures and when to use them

Practice time

Problem solving techniques for writing software

Getting started when you’re lost

Some techniques for problem solving in programming

Our problem solving project

Demo: Divide and conquer in action

Demo: Create the board

Demo: Choose the active player

Demo: Play until someone wins

Demo: Show the board

Demo: Choose a location

Demo: Toggle active player

Demo: Find the winner, naive version

Demo: Find the winner, good version

Concept: Remember the debugger

Concept: Refactor as you go

Practice time

Reading and writing files in Python


Max Q

Making the game extensible

Demo: Moving the rules to a file

Demo: Safer file handling

Demo: File location without assumed working directory

Demo: Extending the game

Concept: Reading JSON

Concept: Leader boards!

Demo: Saving wins

Demo: Displaying leaders

Concept: Saving JSON

Demo: Writing lines in a text file

Demo: Adding logging to Rock Paper Scissors

Demo: Writing lines to a text file

Concept: Appending a line to a text file

For real logging use a real framework

Practice exercises

Using external Python packages











Error handling

Introduction to Python’s error handling

Where are the invalid numerals

Catching invalid numerals

Invalid file formats

Stepping through errors in the debugger

Concept: Python’s exception handling

Practice time

Course conclusion


Review: Variables and types

Review: Conditional statements

Review: Functions

Review: Data structures

Review: Problem solving

Review: File I/O

Review: External packages

Review: git the source code

Time to get in the game

Jupyter as your editor for this course

What are Jupyter notebooks

Setting up jupyter lab as your editor


No previous knowledge of Python or programming required.

What you will learn

  • Installing Python and an editor to write code
  • Data structures and the big ideas of programming
  • Interactive code that has a conversation with the user or data
  • Functions to make your code more maintainable and reusable
  • Create a basic AI / computer opponent for the games
  • Problem-solving techniques to help you dive right into writing code
  • Use external libraries from
  • Add error handling to your application

About the instructor

Michael Kennedy is the host of the #1 Python podcast, Talk Python to Me. He’s interviewed many of the leaders and creators in the Python community and brings that perspective to all the courses he creates. He has been a professional software trainer for over 10 years.

placing your order...

Don't refresh or navigate away from the page.
liveVideo $49.00
Talk Python: Python for Absolute Beginners (liveVideo) added to cart
continue shopping
go to cart

Prices displayed in rupees will be charged in USD when you check out.