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.
3 Days
€950.00
 

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

PythonPython ProgrammingPython 3Artificial IntelligenceAIData AnalyticsArtificialIntelligence