Python Programming

Course:   PYTH3F
Duration:   5 Days
Level:   I
On our website at:   http://www.verhoef-training.com/courses/PYTH3F.html
 
Course Summary

This technical course introduces the Python 3 programming language. It is suitable for programmers starting in Python 3. The corresponding course in Python 2 is also available.

Topics Covered In This Course

Introducing Python

  • What is Python?
  • Why Python?
  • Running Python interactively
  • Python scripts
  • Python help
  • Modules
  • Functions and built-ins

Python Variables

  • Python is Object Oriented
  • Python variables
  • Variable names
  • Type specific methods
  • Operators and assignments
  • Python lists
  • Python tuples
  • Python dictionaries

Flow Control

  • Python conditionals
  • Exception Handling
  • While loops
  • Loop control statements
  • For loops
  • Conditional expressions
  • Unconditional flow control

String Handling

  • Strings
  • The print function
  • String methods
  • String tests
  • String formatting
  • Slicing a string
  • String methods - split and join

Collections

  • Python types - reminder
  • Useful tuple operations
  • Python lists
  • Tuple and list slicing
  • Adding/removing items in a list
  • Sorting
  • List methods
  • Sets
  • Dictionary processing
  • Dictionary methods

Regular Expressions

  • Python regular expressions
  • Extended RE meta-characters
  • Regular expression objects
  • Regular expression substitution
  • Regular expression split
  • Matching alternatives

Data Storage and File Handling

  • New file objects
  • Reading files into Python
  • Writing to files from Python
  • Random access
  • Compression
  • Database interface overview

Functions

  • Python functions
  • Function parameters
  • Named (keyword) parameters
  • Returning objects from a function
  • Nested functions
  • Variables in nested functions
  • Function documentation
  • Lamdba functions

Advanced Collections

  • Advanced list functions - filter
  • List comprehensions
  • Set and dictionary comprehensions
  • Lazy lists
  • Generators
  • Copying collections - problem
  • Copying collections - slice solution?
  • Copying collections - deepcopy solution

Modules and Packages

  • What are modules and packages?
  • Multiple source files
  • How does Python find a module?
  • Importing a module
  • Importing names
  • Directories as packages
  • Writing a module
  • Module documentation
  • Testing a module
  • Python debugger
  • Python profiler
  • Distributing libraries - distutils

Classes and OOP

  • Classes and OOP
  • Object-Oriented Programming
  • Using objects
  • Defining classes and methods
  • Constructing an object
  • Properties and decorators
  • Class methods
  • Inheritance

Error Handling and Exceptions

  • Exception handling
  • Exception syntax
  • Multiple exceptions
  • Exception arguments
  • The finally block

Multitasking

  • Creating a process from Python
  • Waiting for a child
  • Using the subprocess module
  • Running a basic process
  • Capturing the output
  • Passing data through a pipe
  • Processes and threads
  • Very basic threads in Python
  • Synchronization objects in threading
  • Using the multiprocessing module
  • Queue objects

The Python Standard Library

  • The Standard Library
  • Pretty Printer
  • Operating System interfaces - os and friends
  • System specific attributes - sys
  • Signal handling - signal
  • The socket module
  • Other modules
What You Can Expect

At the end of this course you will be able to:

Recommended Prerequisites

No previous knowledge of Python is assumed, although delegates should be familiar with at least one programming language, and object-oriented concepts.

Related Courses
Code Course Title Duration Level
DJANGO
Django Framework
3 Days
I
Details
PYTH3I
Python Programming Introduction
3 Days
I
Details
PYTHONA
Advanced Python Development For Data Science
4 Days
II
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.