"Now that I have learned how to use the right tools, Power Point will save me time and simplify my work." More Testimonials »

Python II: Applied Python (3.X)

Delivery Options

Upcoming Live eLearning Classes

There are currently no upcoming Live eLearning classes. Please contact us if you would like us to schedule a class.

Class Description

Class Overview

This advanced Python training is for students that have mastered the basics of Python via our introductory Python course or their own work, and are now ready to move on to applying Python to daily programming needs. This course picks up where Python I leaves off, covering some topics in more detail, and adding many new ones, with a focus on enterprise development.

This is a hands-on programming class. All concepts are reinforced by informal practice during the lecture followed by lab exercises. Many labs build on earlier labs, which helps students retain the earlier material.

Class Goals

  • Learn to Leverage OS services.
  • Learn to code graphical interfaces for applications.
  • Learn to create modules.
  • Learn to create and run unit tests.
  • Learn to define classes.
  • Learn to interact with network services.
  • Learn to query databases.
  • Learn to process XML and JSON data.

Class Outline

  1. Python refresher
    1. Data types
    2. Sequences
    3. Mapping types
    4. Program structure
    5. Files and console I/O
    6. Conditionals
    7. Loops
    8. Builtins
  2. OS Services
    1. The os module
    2. Environment variables
    3. Launching external commands
    4. Walking directory trees
    5. Paths, directories, and filenames
    6. Working with file systems
    7. Dates and times
  3. Pythonic Programming
    1. The Zen of Python
    2. Common idioms
    3. Lambda functions
    4. List comprehensions
    5. Generator expressions
    6. String formatting
  4. Modules and packages
    1. Initialization code
    2. Namespaces
    3. Executing modules as scripts
    4. Documentation
    5. Packages and name resolution
    6. Naming conventions
    7. Using imports
    8. Distributing modules
  5. Classes
    1. Defining classes
    2. Instance methods and data
    3. Initializers
    4. Class methods
    5. Static methods
    6. Inheritance
    7. Multiple inheritance
    8. Pseudo-private variables
  6. Metaprogramming
    1. Implicit properties
    2. globals() and locals()
    3. Attributes
    4. The inspect module
    5. Decorators
    6. Monkey patching
  7. Enterprise development
    1. Analyzing programs
    2. unittest overview
    3. Simple unit tests
    4. Creating and running test suites
  8. Database access
    1. The DB API
    2. Available Interfaces
    3. Connecting to a server
    4. Creating and executing a cursor
    5. Fetching data
    6. Parameterized statements
    7. Metadata
    8. Transaction control
  9. GUI Programming with tkinter
    1. Overview
    2. The mainwindow object
    3. Widgets
    4. Colors and fonts
    5. GUI layout
    6. Event handling
  10. Network Programming
    1. Sockets
    2. TCP/IP Clients and Servers
    3. Forking or threaded servers
    4. Working with binary data
    5. Providing RESTful services
  11. Threads
    1. Why use threads?
    2. The threading module
    3. Sharing variables
    4. The queue module
    5. Debugging threaded programs
  12. Revving up your code
    1. Tracing execution
    2. Simple benchmarks with timeit
    3. Creating profiles with cProfile
    4. Advanced profiling
    5. Checking memory with melerai (???)
  13. XML and JSON
    1. Working with XML
    2. XML modules in Python
    3. Getting started with ElementTree
    4. Parsing XML
    5. Updating an XML tree
    6. Creating a new document
    7. About JSON
    8. Reading JSON
    9. Writing JSON
  14. Extending Python with C
    1. About non-Python modules
    2. Overview of a C extension
    3. Creating functions
    4. Registering functions
    5. Initialization code
    6. Loading the module

Why Webucator?

10.00 out of 10 based on 4 reviews.
  • Expert instructors.
  • Classes are never canceled for low enrollment.
  • 100% free re-take option.
  • We have taught more than 45,793 students at 12,389 different organizations.
5 / 5 stars

Our instructor was both highly skilled and engaging. Excellent instruction combined with material that both summarized the lecture and offered a solid reference, this was easily the best course I've taken in years.

, T. Rowe Price

Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following areas is required:

  • All students should be able to write simple Python scripts, using basic data types, program structures, and the standard Python library.

Courses that can help you meet these prerequisites:

Technical Requirements

Our computer technical requirements and setup process is easy, with support just a click away.

Client Success
  1. Independent Survey
  2. Client List
  3. Testimonials
Join The Team
  1. Learn how you can become a Webucator Trainer
  2. Career Opportunities
Locations
Compare Us
Watch 2-minute Demo Video
of Live Online Training:
Learn the benefits of online training with Webucator
Share
Webucator is a Registered Education Provider (R.E.P.) approved by PMI to issue professional development units (PDUs) for our training courses.
© Webucator, Inc. All rights reserved. | Toll Free: 1-877-932-8228 Toll Free: 1-877-932-8228 | From outside the USA: 315-849-2724| Fax: 315-849-2723