Advanced Python Programming

Course:   PYADV
Duration:   2 Days
Level:   II
On our website at:   http://www.verhoef-training.com/courses/PYADV.html
 
Course Summary

This course delves into the advanced features and usage of the Python Programming language, one of the most popular and powerful dynamic languages available in the open source community today.

This is a deep, three-day course that is intended to get programmers from novice Python programming experience to deep expertise, using instruction and hands-on exercises. The instructor has over eight years of Python experience and will use examples from real life to illustrate concepts.

Topics Covered In This Course

Deep Dive into Python Interpreter and Runtime

  • The Python Language: a formal overview
  • Internals of the Python Interpreter
  • Python program runtime and execution
  • Alternate Python interpreters
  • Modules and Import Hooks
  • Namespaces, Variables and Labels
  • Closures and Scope
  • Operators, Attribute Lookup, and Properties
  • Statements, Expressions and Lambdas

Advanced Functional and OO programming in Python

  • Meet the Python function
  • Function properties
  • Functions as strategies
  • Switch maps
  • Decorators and wrappers
  • Proxies, memoization and currying
  • Meet the Python class
  • Class initialization
  • Descriptors and Metaclasses
  • Instance initialization and finalization
  • __dict__ and __slots__
  • __getattribute__ and class proxies
  • Method Resolution Order (MRO)
  • Evaluating Python Performance
  • Performance tricks and traps
  • Advanced Examples: Iterators
  • Advanced Examples: Generators
  • Advanced Examples: Context Managers

Modern, Scalable Python Programming

  • Advanced I/O
  • threading and green threads
  • Synchronization primitives
  • The GIL
  • multiprocessing
  • Generators and Coroutines
  • Distributed Computing with Python
  • Accessing OS services
  • Idiomatic Python Applications
  • SQL Access with SQLAlchemy
  • XML Access with etree
  • The Web: WSGI, Django and Genshi
  • JSON Access with simplejson and django-piston
  • Sphinx, doctest and project documentation
What You Can Expect

At the end of this course, attendees will be able to:

Who Should Take This Course

Aimed at developers/engineers. Attendees should already know the basics of Python programming, ideally from the precursor to this course.

Recommended Prerequisites

Basic background in Python programming.

Training Style

45m-1h instruction sections will be separated by 15-30m labs, featuring hands-on examples. Final day will also include a group project, delivered by the end of the day to solidify concepts learned during the course.

Related Courses
Code Course Title Duration Level
PYTH3F
Python Programming
5 Days
I
Details
PYTH3I
Python Programming Introduction
3 Days
I
Details

Every student attending a Verhoef Training class will receive a certificate good for $100 toward their next public class taken within a year.

You can also buy "Verhoef Vouchers" to get a discounted rate for a single student in any of our public or web-based classes. Contact your account manager or our sales office for details.