EIEIOTECHNOVATION
← Training programmes

EIEIO / OPERATING SYSTEMS

Python programming & Introduction to Linux Customised Training

Course outline

5 days

Duration

5 days

Objective

  • Learn and master the fundamentals of the core Python language quickly and efficiently, whether you're new to programming or just new to Python
  • This course assumes no prior Linux knowledge, starts at the beginning and walks through every topic and task that matters, using easy-to-understand examples.

Outline

Introduction to Python

About Python

The Python Interpreter

Python Compilation

Python Scripts in Linux/Unix & Windows

Whitespace Significance

Line Termination

Comments in Python

Basic Output Generation

Simple User Input

Python Modules

Module Search Paths

Determining the System Search Path

Working with Variables in Python

Python Variables

Naming Conventions & Rules

Types as Objects

Variable References & Garbage Collection

Sequence Types

Membership Statements

List Iteration

List Enumeration

Sequence Assignments

Mutable vs Immutable Objects

Multi Target Assignments

Assignment Shorthand

Numeric Operations in Python

More About Python's Numeric Types

Numeric Tools

The Decimal Module

Operator Precedence

Python String Types

Generating Strings in Python

Common String Methods

Type Conversion in Python

Formatting String Output

Variable Substitution

String Slicing

Python's Lists & Tuples

Python Lists

Common List Methods

Other List Operations

The range() Function

Multi-Dimensional Lists (Matrices)

Tuples

Python Dictionaries

Assigning Values to Dictionaries

Dictionary Methods

Dictionaries vs Lists & Tuples

Python Compound Statements

Python Nesting Recap

Comparison Operations

The if Statement

The if Ternary Expression

Using try To Handle Errors

The while Loop

The for Loop

Traversing Parallel Sets

Basic Input/Output with Files

Opening Files

Working with Files

Controlling Output Location

Understanding Iterators

Iterable Objects

The iter() Function

Using map With Iterators

Python List Comprehension

Basic List Comprehensions

Compound List Comprehensions

Creating Python Functions

Function Basics

Defining Functions

Function Polymorphism

Argument Defaults

Lambdas

Local Variables

Variable Masking

Understanding __builtin__

Preventing Variable Modifications

Argument Matching Methods

Modules & Packages

Module Basics

Packages

Using __all__ and _ Variables

Using __name__

Object Oriented Python

About OOP

The Class Statements

Class Inheritance

Classes as Objects

Using Dictionaries

Understanding self

Overriding Inherited Methods

More Inheritance

Operator Overloading

The __iter__ Method

The __getitem__ Method

Empty Classes For Storage

Pickling & Shelving Objects

Multiple Inheritance

Exceptions

About Exceptions

Python's Default Exception Handler

Using Try/Except/Finally Exceptions

Generating User Defined Exceptions

More on Exceptions

Exception Examples

Using Asserts

Exception Classes

Python Generators

About Generators

Generator Syntax

Communicating with Generators with send()

OS Interfacing

About the sys & os Modules

Gleaning More Using __doc__ & help()

Common sys Module Attributes & Methods

Working With the os Module & Files/Directories

File & Path Examples

Working with os.path

os & os.path Module Examples

Running Shell Commands

Accessing Databases with Python

About Database Access

About psycopg2

PostgreSQL Connect Strings

Cursor Objects

PsychoPG2 Examples

Welcome to Linux

The History of UNIX and GNU–Linux

What Is so Good About Linux?

Overview of Linux

Additional Features of Linux

Conventions Used in This Book

Chapter Summary

Exercises

Installation Overview

The Desktop Live CD and the Install DVD

More Information

Planning the Installation

The Installation Process

Downloading and Burning a CD/DVD

Gathering Information About the System

Chapter Summary

Exercises

Step-by-Step Installation

Running a Fedora Live Session

Installing Fedora/RHEL

Installation Tasks

gnome-control-center/Displays: Configures the Display

Chapter Summary

Exercises

Introduction to Fedora and Red Hat Enterprise Linux

Curbing Your Power (Superuser/root Privileges)

A Tour of the Fedora/RHEL Desktop

Getting the Most Out of the Desktop

Updating, Installing, and Removing Software Packages

Where to Find Documentation

More About Logging In

Working from the Command Line

Chapter Summary

Exercises

The Linux Utilities

Special Characters

Basic Utilities

Working with Files

| (Pipe): Communicates Between Processes

Four More Utilities

Compressing and Archiving Files

Locating Utilities

Displaying User and System Information

Communicating with Other Users

Email

Tutorial: Using vim to Create and Edit a File

Chapter Summary

Exercises

The Linux Filesystem

The Hierarchical Filesystem

Directory Files and Ordinary Files

Pathnames

Working with Directories

Access Permissions

ACLs: Access Control Lists

Links

Chapter Summary

Exercises

The Shell

The Command Line

Standard Input and Standard Output

Running a Command in the Background

Filename Generation/Pathname Expansion

Builtins

Chapter Summary

Exercises

Linux GUIs: X and GNOME

X Window System

The Nautilus File Browser Window

The Nautilus Spatial View (RHEL)

GNOME Utilities

Chapter Summary

Exercises

The Bourne Again Shell

Background

Shell Basics

Parameters and Variables

Special Characters

Processes

History

Aliases

Functions

Controlling bash: Features and Options

Processing the Command Line

Chapter Summary

Exercises

Networking and the Internet

Introduction to Networking

Types of Networks and How They Work

Communicate Over a Network

Network Utilities

Distributed Computing

Accessing Windows Shares

Remote Desktop

WWW: World Wide Web

Chapter Summary

Exercises

Programme scope, delivery arrangements and suitability are confirmed during enquiry.