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
| Name | Date | Location | |
|---|---|---|---|
| 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