Advanced Python Development

Contact Us for Dates
4 days practical workshop for up to 12 people.

Contact us for Onsite Price

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.

Layout

Lectures with practical exercises

Training Course Objectives

  • 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

Who it is for

Python developers who wish to develop their knowledge

Training Course Prerequisites

  • The course assumes you are happy with core Python concepts and syntax
  • Approx. 6 months Python experience

Chapters

Chapter 1 Recal Essential Python Features

  • Modules and packages
  • Built-in functions
  • Algorithms and data structures
  • Object-oriented Python

Chapter 2 Functional Development

  • Overview of functional programming
  • Iterators
  • Generator expressions
  • List comprehensions
  • Built-in functions
  • Using the itertools module

Chapter 3 Curses Programming

  • Overview of the curses module
  • Starting and ending a curses app
  • Windows and pads
  • Displaying text
  • User input

Chapter 4 GUI Programming

  • Overview of GUI APIs
  • Creating GUIs using Tkinter
  • Creating GUIs using JPython

Chapter 5 Effective Logging

  • Logging essentials
  • Handlers and formatters
  • Configuration
  • Blocking handlers
  • Adapters
  • Filters
  • File rotation
  • Additional techniques

Chapter 6 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

Chapter 7 XML Processing

  • Overview of SAX
  • Processing XML data using SAX
  • Overview of DOM
  • Processing XML data using DOM

Chapter 8 Multithreading

  • Threading essentials
  • Starting a new thread
  • Using the threading module
  • Synchronizing threads
  • Specifying thread priorities

Chapter 9 Networking

  • Socket concepts
  • Creating sockets
  • Sending data over a socket
  • Listening for connections
  • Receiving data over a socket
  • Non-blocking sockets
  • Sending emails

Chapter 10 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

Chapter 11 Going Further with Django

  • Migrations
  • Raw SQL
  • Transactions
  • Aggregations
  • Generating CSV and PDF content
  • Security

Chapter 12 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