Course Description

This course aims to extend and solidify your Python experience by exploring structural techniques and common Python APIs. You’ll learn how to write OO and functional code, implement GUIs, create Web sites backed up by relational databases, implement multithreaded code, and more.

The course assumes you are happy with core Python concepts and syntax.

What you’ll learn:

    • Functional Python programming
    • GUI development using Python
    • Logging
    • Regular expressions
    • XML manipulation
    • Multithreading
    • Networking
    • Web and database development using Django
    • Integrating with the C programming language



3 days


Target Audience

This course is for delegates wanting to further their knowledge of Python.


Course Prerequisites

Delegates should have taken an introductory Python course (such as the course below) or have six months of Python programming experience.

If you have any questions or doubts as to whether you meet the pre-requisites for this course, or indeed are wondering which course best suits you, please consult with us to discuss your suitability for course attendance.


Suggested Follow on Courses

Please contact us for further details.


Course Content

    • Recap Essential Python Features: Modules and packages; Built-in functions; Algorithms and data structures; Object-oriented Python
    • Functional Development: Overview of functional programming; Iterators; Generator expressions; List comprehensions; Built-in functions; Using the itertools module
    • Curses Programming: Overview of the curses module; Starting and ending a curses app; Windows and pads; Displaying text; User input
    • GUI Programming: Overview of GUI APIs; Creating GUIs using Tkinter; Creating GUIs using JPython
    • Effective Logging: Logging essentials; Handlers and formatters; Configuration; Blocking handlers; Adapters; Filters; File rotation; Additional techniques
    • Regular Expressions: Overview; Using the match function; Using the search function; Search and replace; Regular expression modifiers; Regular expression patterns; Special characters; Multiplicity; Greedy vs. non-greedy repetition
    • XML Processing: Overview of SAX; Processing XML data using SAX; Overview of DOM; Processing XML data using DOM
    • Multithreading: Threading essentials; Starting a new thread; Using the threading module; Synchronizing threads; Specifying thread priorities
    • Networking: Socket concepts; Creating sockets; Sending data over a socket; Listening for connections; Receiving data over a socket; Non-blocking sockets; Sending emails
    • Getting Started with Django: Overview of Django; Installing Django; Writing a simple Django app; Defining a simple model; QuerySets; Implementing simple views; Using simple templates
    • Going Further with Django: Migrations; Raw SQL; Transactions; Aggregations; Generating CSV and PDF content; Security
    • Python Extension Programming in C: Overview of the Python extension module; C functions; Method mapping table; Initialization; Building and installing extensions; Importing extensions; Passing parameters to functions; Receiving return values


See more Programming Languages courses