Advanced Python Programming

Explore advanced level concepts of Python programming

Course Code : 1178

$2495

Overview

This comprehensive advanced-level course on Python programming involves hands-on lab exercises, engaging lectures, demos and activities to ensure participants get a thorough understanding of the concepts being discussed. The course leads participants through a series of progressively advanced topics such as OS services, modules, unit tests, databases, XML data, packages, meta programming, network programming, threads, etc. The course is a skill-centric course, focusing on helping participants master advanced Python and web development skills, the latest techniques and coding practices. The course does not cover Python fundamentals.

Schedule Classes

Delivery Format
Starting Date
Starting Time
Duration

Live Classroom
Monday, 28 October 2019
10:00 AM - 6:00 PM EST
4 Days (Mon - Thu)

Looking for more sessions of this class?

Course Delivery

This course is available in the following formats:

Live Classroom
Duration: 5 days

Live Virtual Classroom
Duration: 5 days

What You'll learn

  • Leverage OS services
  • Code graphical interfaces for applications
  • Build modules
  • Create and run unit tests
  • Define classes
  • Working with network services
  • Query databases
  • Handle XML data

Outline

  • Data types
  • Sequences
  • Mapping types
  • Program structure
  • File and console I/O
  • Conditionals
  • Loops
  • Built-ins
  • The OS module
  • Environment variables
  • Launching external commands
  • Walking directory trees
  • Paths, directories and file names
  • Working with file systems
  • Dates and times
  • The Zen of Python
  • Common idioms
  • Lambda functions
  • List comprehensions
  • Generator expressions
  • String formatting
  • Initialization code
  • Namespaces
  • Executing modules as scripts
  • Documentation
  • Packages and name resolution
  • Naming conventions
  • Using imports
  • Define classes
  • Instance methods and data
  • Properties
  • Initializers
  • Class and static methods/data
  • Inheritance
  • Implicit properties
  • Globals() and locals()
  • Working with attributes
  • The inspect module
  • Decorators
  • Monkey patching
  • Analyzing programs
  • Using pylint
  • Testing code
  • Using unittest
  • Debugging
  • Profiling and benchmarking
  • Distribution concepts
  • Setup tools
  • Creating setup.py
  • Building installers
  • Running installers
  • The DB API
  • Available interfaces
  • Connecting to a server
  • Creating and executing a cursor
  • Fetching data
  • Parameterized statements
  • Metadata
  • Transaction control
  • Other DBMS modules
  • About QT4
  • Getting started with the designer
  • Widget properties
  • Predefined dialogs
  • Generating the UI
  • Wiring up events
  • Advanced topics
  • Sockets
  • Clients
  • Servers
  • Application protocols
  • Forking servers
  • Binary data
  • The struct module
  • When to use threads?
  • The Global Interpreter Lock
  • The threading module
  • Simple threading
  • Sharing variables
  • Threaded servers
  • The queue model
  • Debugging threaded programs
  • Alternatives to threading
  • Working with XML
  • DOM and Sax
  • Introducing ElementTree and lxml
  • Parsing XML
  • Navigating the document
  • Creating a new XML document
  • JSON
  • Parsing JSON into Python
  • Converting Python into JSON
  • About non-Python modules
  • Overview of a C extension
  • Writing C by hand
  • Loading modules with C-types
  • Running external commands with sub-processes
  • Getting command status
  • Managing STDOUT, STDERR and STDIN
  • The sh module (non-Windows systems only)
  • Creating a simple command
  • Keyword arguments
  • Running commands in the background
  • Piping and re-direction
  • Working with STDIO
  • Exit codes
  • Advanced features
View More

Prerequisites

Participants need to have basic incoming practical experience working with Python, along with a working user-level knowledge of Unix/Linux, Mac or Windows. Participants also need to be trained or have equivalent practical skills in “Introduction to Basic Python Programming”, “Essential Python Programming” and “Mastering Python Programming”.

Who Should Attend

This is an intermediate to advanced level course and is highly recommended for –

  • Software developers
  • Back-end developers
  • Software engineers
  • Programmers
  • System administrators

Interested in this course? Let’s connect!

Customer Reviews

Name
Email
Rating
Comments

No reviews yet