Python programming - Introduction


Course Description

This three day course is a practical introduction to Python 3. Participants will gain a clear grasp of the fundamentals of python programming and how to use that knowledge to automate tasks and derive insights from data. Using these fundamentals, participants will also be guided on how to use an AI Assistant to improve efficiency when writing code and to add AI features to a Python application.

Duration: 3 days


Prerequisites

Some level of experience with at least one other programming language is desirable. This is not an Introduction to Programming course. Working/user level knowledge of an operating system such as Linux, Windows, or MacOS.

Who should attend

Participants with some programming knowledge who would like to understand how to programme using Python to collect, process and visualise data or automate tasks.

Learning Objectives

At the conclusion of this course, attendees will be able to: Design and programme Python applications using Visual Studio Code and Jupyter environments Use the main flow of control elements in Python Choose the appropriate variable type when required Use the different collection types, including lists, tuples and dictionaries Write functions and pass parameters Create classes and objects Read, write and parse different types of files Access operating system variables and automate tasks Use Numpy and Pandas to represent data sets Graph using Matplotlib and other tools Read and write to a SQLite database Create a basic UI using TKInter Use an AI Assistant to improve efficiency when writing code Take first steps to adding AI to your Python application using the ChatGPT API

Python basics

The Python environment Visual Studio Code Integrated Development Environment Variables Keywords Variable types Built in functions The Zen of Python and writing "Pythonic" code

Flow Control

if and elif Conditional expressions Relational operators Boolean operators while loops for loops Using break and continue for else and while else loops

Functions

Defining a function Function parameters Returning values Default parameter values Named and positional parameters Global variables Variable scope

Modules and Packages

Python standard library The import statement Creating your own module Understand __name__ and how to write test code for your module Third party library modules The Python package manager - pip

Lists and Tuples

About sequences Lists Indexing and slicing Iterating through a sequence Functions for all sequences Using enumerate Operators and keywords for sequences List comprehension techniques Generators

Working with Strings

Creating strings String functions fStrings Indexing and slicing strings t-strings (new in Python 3.14) Understanding immutable and mutable objects The id() function

Using AI Assistants for Coding

Overview of AI Warnings Prompt engineering techniques Getting ChatGPT or Copilot to write code Iterative development

Working with files

Text file I/O Opening a text file The with block Reading a text file Writing to a text file

Exception handling

Exceptions Handling exceptions with try Handling multiple exceptions Handling generic exceptions Ignoring exceptions Using else Cleaning up with finally re-raising exceptions Raising a new exception The standard exception hierarchy

Dictionaries and sets

About dictionaries
When to use dictionaries
Creating dictionaries
Getting dictionary values
Iterating through a dictionary
Reading file data into a dictionary

OS Services and Task Automation

The sys module & The os module Using argv to access command line parameters Environment variables Launching external processes Paths, directories, and filenames

SQLite Introduction

Relational database overview SQLite module Connecting to a database Querying data Insert, update and delete operations

Basic UI Applications

Creating a simple desktop UI application The TKInter module A basic window Adding Widgets Event driven programming

Classes

Defining classes Instance objects Instance attributes Methods Properties Class data Inheritance Pseudo-private variables Static methods

Adding AI To Your Python Application Using ChatGPT API

Making an API call from Python Introducing the ChatGPT API Making a request Simple example - sentiment analysis

Juypter

The Visual Studio Code Jupyter extension Understanding markdown Tab completion Magic commands Benchmarking External commands & Enhanced help Notebooks

Numpy

Objectives Python's scientific stack NumPy overview Creating arrays & Creating ranges Working with arrays Shapes Slicing and indexing Indexing with Booleans

Pandas

About pandas Architecture Series DataFrames Index Objects Basic Indexing Broadcasting

Matplotlib

Setting up Matplotlib Creating different plot tyles Customizing your plot. Alternatives to Matplotlib – e.g Seaborn


Schedule

NameDateLocation 
Python programming - Introduction 2026-06-02 Online
Python programming - Introduction 2026-09-07 Online

Python Python Programming Python 3 Artificial Intelligence AI Data Analytics ArtificialIntelligence