Python Programming: Advanced

545.00  excl. VAT

Instructor: TBA

Delivery Dates: TBA

Duration: 3 days;

Standard Price: EUR 545 w/o VAT. EU registered businesses in EU countries other than Bulgaria will not be charged VAT.;

Location: TBA;

Minimum number of participants: 6

Maximum number of participants: 10


Python® Programming: Advanced

Course Specifications

Course Length:

3 days

Course Description


Python® continues to be a popular programming language, perhaps owing to its ability to get a lot of work done in few lines of code, and its versatility. Python is useful for developing custom software tools, applications, web services, and cloud applications. In this course, you’ll build upon your basic Python skills, learning more advanced topics such as object-oriented programming patterns, development of graphical user interfaces, data management, threading, unit testing, and creating and installing packages and executable applications.

Course Objectives:

In this course, you will expand your Python proficiencies.

You will:

  • Create object-oriented Python applications.
  • Design and create a GUI.
  • Store data in a database from Python applications.
  • Communicate using client/server network protocols.
  • Manage multiple processes with threading.
  • Implement unit testing.
  • Package an application for distribution.

Target Student:

This course is designed for existing Python programmers who have at least one year of Python experience and who want to expand their Python proficiencies.


To ensure your success in this course, you should have experience with object-oriented programming and Python 2.x or 3.x. You can obtain this level of skill and knowledge by taking the following Logical Operations course:

  • Python® Programming: Introduction

Course-specific Technical Requirements – Software

  • Windows® 10/8.1/8/7/Vista (64-bit).
    NOTE: This course was successfully keyed on Windows 10. Some activity steps may not key exactly as written if students key on a different version of Windows.
  • Python version 3.4.2 (python-3.4.2.amd64.msi, provided with the course data files).
  • PyCharm Community Edition version 3.4.1 ( pycharm-community-3.4.1.exe, provided with the course data files).
    NOTE: Python is distributed under the Python Software Foundation License (PSFL). PyCharm Community Edition is distributed under the Apache® License 2.0.
  • If necessary, software for viewing the course slides. (Instructor machine only.)

Course Content

Lesson 1: Using Object-Oriented Python

Topic A: Create and Use Classes in an Application

Topic B: Use Magic Methods

Topic C: Incorporate Class Factories

Lesson 2: Creating a GUI

Topic A: Design a GUI

Topic B: Create and Arrange a GUI Layout

Topic C: Interact with User Events

Lesson 3: Using Databases

Topic A: Basics of Data Management

Topic B: Use SQLite Databases

Topic C: Manipulate SQL Data

Lesson 4: Network Programming

Topic A: Basics of Network Programming

Topic B: Create a Client/Server Program

Lesson 5: Managing Multiple Processes with Threading

Topic A: Create a Threaded Application

Topic B: Manage Thread Resources

Lesson 6: Implementing Unit Testing

Topic A: Test-Driven Development

Topic B: Write and Run a Unit Test Case

Topic C: Create a Test Suite

Lesson 7: Packaging an Application for Distribution

Topic A: Create a Package Structure

Topic B: Generate the Package Distribution Files

Topic C: Generate a Windows Executable