Python Training

Python is possibly the most popular general-purpose scripted language currently in use. People like it for its code readability, object orientation, extensive standard library, vast array of additional modules, and the fact that it is free and open source. Whether you are programming games, system administration tasks, data-driven business applications or web apps with the Django framework, Python is a very popular choice.

With our Python training you will learn the fundamental concepts and practical implementation of Python programming. We will also cover tools, tips, and commonly used techniques.

Prerequisites:

  • Some previous programming experience (e.g., JavaScript, Perl, or C for examples) required
  • Some experience with the Windows, Mac or Unix command prompt: understanding of "cd" command and working directories

Getting Started with Python

In this first part of the Python training class, you will be introduced to the Python language, different ways to interact with the language's interpreter, and popular Python IDE's (integrated development environments).

  • Interactive vs. Batch Execution
  • Python IDLE
  • Differences between number and string data types
  • How to assign and reference variables
  • Python expressions and operators

Fundamentals of Python Programs and Program Development

A non-trivial program will almost always have at least 3 parts (input routine to accept user input, computation on input data, and output routine to generate the results). In this section, you will learn the basic structure of such programs.

  • Simple output and formatting with the print command
  • Getting input values and the input function
  • Data type conversion
  • Mathematical functions
  • The import function

Python Functions

In this section, you will be introduced to Python functions and the benefits of using them in your programs.

  • Understand the basic syntax of functions
  • Defining and calling a function in a program
  • Asserting the correctness of a function
  • Write nested functions
  • Using the Python debugger

Python Sequences: Lists, Tuples, and Ranges

In this section, you will learn and work with composite data types.

  • Lists, tuples, and ranges
  • Assignment and variables with lists and tuples
  • Common and basic operations on sequences
  • Indexing and slicing
  • Working with the map, lambda, filter, and Boolean functions
  • Incorporating sequences in loop functions

Control Flow Statements

In this section, you will learn control statements and control flow.

  • The if statement and if syntax
  • Relational operators
  • Compound statements using if-else, if-then, if-elif
  • Nested-if and deeply nested if statement
  • Writing a proper if control
  • Boolean operators and semantics of Boolean operators
  • Control expression

Repetition Control Statements

In this section, you will learn about loop statements and task control with count-controlled and sentinel-controlled repetitions.

  • The for statement and syntax
  • Control flow of for
  • The while statement and syntax
  • The while loop pitfalls
  • The break, else, and continue statements
  • Incorporating else, break, and continue in a for loop

List Processing

Here we show you how to work with and manipulate lists

  • List processing
  • Iterate and update a list
  • The reduce function
  • Nested lists
  • Representing tables with nested lists
  • Accessing members in lists
  • List operations vs. list methods
  • List operation gotchas

String Processing

This section is dedicated to Python string processing and regex

  • String processing
  • Sequence operations for strings
  • Using string methods
  • Common string methods
  • Checking input
  • Regular expression and pattern matching
  • The search method
  • The findall and finditer methods
  • The sub method

Sets and Dictionaries

This section introduces Python data sets and dictionaries.

  • Composite data types
  • Set creation
  • Common set operations and methods
  • Understanding dictionaries and key:value pairs
  • Common dictionary operations and methods

File Input/Output

In this section, we will be working with reading data from a file and saving the data to a file.

  • The two types of files: Text file (ASCII) and Binary
  • Reading and saving files
  • Syntax for the open function
  • The pickle module for binary files
  • The os module

Object-Oriented Programming in Python

In this section we will explore OOP in Python, one of the features it is most known for.

  • Understanding what is an object
  • Defining and working with Python classes
  • Creating multiple objects
  • Defining and working with constructors
  • Accessors and mutators
  • Inheritance
  • Object-oriented design

We offer Python classes at four locations: