Python 3 Programming

4 Day Course
Hands On
Official Curriculum
Code QAPYTH3

Book Now - 1 Delivery Method Available:

Classroom Virtual Classroom Private Group - Virtual Self-Paced Online

Overview

This is a technical course that introduces the Python 3 programming language. It is suitable for programmers starting new projects in Python 3, or for those porting existing applications from Python 2. It is an instructor led presentation and hands on exercises course using MS Windows, but is equally applicable to other platforms such as Linux.

Objectives

On completion delegates will be able to:

  • Understand Python 3 language elements
  • Exploit the rich library of Python libraries and modules
  • Appreciate the differences between Python 2 and Python 3
  • Recognize simple and complex variable types and select appropriately
  • Use Python 3 operators and built-in functions
  • Understand procedural control flow in Python 3
  • Program file input/output, including persistent data objects.
  • Create well organized and efficient code using functions and modules
  • Use Object Oriented programming techniques in Python 3.
  • Build robust applications with error trapping and reporting
  • Run and control other programs from Python
  • Take advantage of multi-core processors with multiprocessing.

Training Partners

We work with the following best of breed training partners using our bulk buying power to bring you a wider range of dates, locations and prices.

Modules

Collapse all

Introduction to Python 3 (12 topics)

  • Introduction to Python
  • What is Python?
  • What is Python 3?
  • Why Python?
  • Performance downsides
  • The community
  • Running Python interactively
  • Python scripts
  • Python help
  • Anatomy of a Python script
  • Modules
  • Functions and built-ins

Fundamental Variables (12 topics)

  • Fundamental Variables
  • Python is Object Oriented
  • Python variables
  • Variable names
  • Type specific methods
  • Operators and type
  • Augmented assignments
  • Python types
  • Switching types
  • Python lists introduced
  • Python tuples introduced
  • Python dictionaries introduced

Flow Control (14 topics)

  • Python conditionals
  • Indentation
  • What is truth?
  • Boolean and logical operators
  • Chained comparisons
  • Sequence and collection tests
  • Object types
  • A note on Exception Handling
  • While loops
  • Loop control statements
  • For loops
  • Counting 'for' loops
  • Conditional expressions
  • Unconditional flow control

String Handling (11 topics)

  • :Python 3 strings
  • The print function
  • Cooking strings
  • String concatenation
  • "Quotes"
  • String methods
  • String tests
  • String formatting
  • Other string formatting aids
  • Slicing a string
  • String methods - split and join

Collections (15 topics)

  • Python types - reminder
  • Useful tuple operations
  • Python lists
  • Tuple & list slicing
  • Adding items to a list
  • Removing items by position
  • Removing list items by content
  • Sorting
  • Miscellaneous list methods
  • Sets; Exploiting sets
  • Set operators
  • Python dictionaries
  • Dictionary values
  • Dictionary methods
  • View objects - examples

Regular Expressions (13 topics)

  • Python regular expressions
  • Elementary extended RE meta-characters
  • Regular expression objects
  • Regular expression substitution
  • Regular expression split
  • Matching alternatives
  • Anchors
  • Class shortcuts
  • Flags
  • Repeat quantifiers
  • Quantifiers
  • Parentheses groups
  • Back-references

Data Storage and File Handling (14 topics)

  • New file objects
  • Reading files into Python
  • Reading tricks
  • Binary mode
  • Writing to files
  • Standard streams
  • More tricks
  • Random access
  • Python Pickle Persistence
  • Pickle Protocols
  • Build some shelves
  • Compression
  • Database interface overview
  • Example - SQLite from Python

Functions (13 topics)

  • Python functions
  • Function parameters
  • Passing tuples
  • Passing dictionaries
  • Assigning default values to parameters
  • Enforcing named parameters
  • Returning objects from a function
  • Variables in functions
  • Nested functions
  • Variables in nested functions
  • Function documentation
  • Lamdba functions
  • Lambda as a sort key

Modules and Packages (9 topics)

  • What are modules and packages?
  • Multiple source files
  • How does Python find a module?
  • Importing a module
  • Importing names
  • Directories as packages
  • Writing a module
  • Module documentation
  • Testing a module

Classes and OOP (12 topics)

  • Object-Oriented terminology
  • Object-Oriented Programming
  • Using objects
  • A simple class
  • Defining classes
  • Defining methods
  • Constructing an object
  • Special methods
  • Operator overload special methods
  • Properties and decorators
  • Inheritance
  • Inheritance terminology

Error Handling and Exceptions (12 topics)

  • Error Handling and Exceptions
  • Writing to stderr
  • Exception handling
  • Exception syntax
  • Exception arguments
  • The finally block
  • Order of execution
  • The Python exception hierarchy
  • A common mistake
  • The raise statement
  • Raising our own Exceptions
  • assert

Multitasking (14 topics)

  • Family life
  • Creating a process from Python
  • Old interface examples
  • Waiting for a child
  • Using the subprocess module
  • Popen method
  • Running a basic process
  • Capturing the output
  • Passing data through a pipe
  • Processes and threads
  • Very basic threads in Python
  • The trouble with threads
  • Using the multiprocessing module
  • Queue objects

The Python Standard Library (8 topics)

  • Example - converting Python 2 scripts to Py3 Operating System interfaces - os and friends os.open example
  • System specific attributes - sys
  • Stream handling - io
  • Configuration files
  • The configparser module
  • The datetime module and friends
  • The platform module; __future__
  • Other modules

Prerequisites

No previous knowledge of Python is assumed, although students should be familiar with at least one programming language. Experience of another scripting language, such as Perl or PHP, will be an advantage, as will previous experience of object oriented programming.

Scheduled Dates

Please select from the dates below to make an enquiry or booking.

Pricing

Different pricing structures are available including special offers. These include early bird, late availability, multi-place, corporate volume and self-funding rates. Please arrange a discussion with a training advisor to discover your most cost effective option.

Code Location Duration Price Sep Oct Nov Dec Jan Feb
Later scheduled dates may be available for this course.

Course PDF

Print

Share this Course

Share

Recommend this Course

Sections