Working with Python - Introductory Level

What You'll Learn

  • Learn the basics of Python, one of the most popular programming languages in use today
  • Learn about the difference between Object-oriented and procedural programming
  • Learn best practices when writing Python code
  • Learn how to create a virtual environment to isolate your program and make it easy to install

  • Learn the syntax of the Python language by writing a text-based adventure game
  • Learn to think like a computer scientist: making decisions, looping logic, and performing calculations
  • Learn how to build a terminal-based Python program

Who this course is for

  • This course is perfect for absolute beginners with no previous programming experience.
  • It's also great if you know an existing programming language and want to become skilled in Python.


Python is one of the world's most popular programming languages, and with good reason: it is extremely flexible, easy to learn, and runs on a wide variety of devices and platforms. In fact, Python recently moved to first place in the TIOBE programming community index, which is a remarkable achievement.

This course is an introduction to Python, version 3.10. Unlike many introductory courses, we will not spend hours surveying the basics of the language; personally, I see no point in doing that, since there are already many, many free resources online that do precisely that. Instead, we'll learn the language in the way that I have long preferred: we'll actually build something.

The bulk of this course will be focused on building a simple text adventure game, where the player explores a labyrinth, encounters monsters, engages in combat, finds items, and that sort of thing. It's a bit of a throwback to the early days of computer games, but the important thing here is not the quality of the game that we'll build, but rather that we'll cover all of the things you need to get started programming in Python, including:

Python's primitive data types: integer, float, string, and boolean

Python's aggregate data types: tuple, set, dictionary and list

How to make decisions in Python: if/elif/else

How to loop in Python: for and while loops

How to write functions

How to import from the standard library, and third party packages

How to structure a Python program

How to perform mathematical operations in Python

How to manipulate strings in Python

How to work with classes in Python

And, as the saying goes, much more. Periodically, I'll include "aside" lectures, which focus on a particular aspect of Python in more detail, with simple code examples that are not part of the main project.

This course requires no previous programming experience.