Python Programming 1 & 2
 
 

Python Programming 1 & 2

Course Code: PYP12

Duration: 5 days

StayAhead Training no longer offer this 5 day course.

Please refer to our new 4 day Python 1 Programming course and our 2 day Python Programming 2 course.

S5

Python Programming 1 & 2 Course Overview

Python is an object oriented rapid development language deployed in many scenarios in the modern world.

This Python Programming 1 & 2 course comprises sessions dealing with the basics, variables, operators, conditional and control statements, functions, modules, pattern matching, OO, email, databases, advanced OO, iterators and generators, comprehensions, decorators, multithreading, functional programming, web services, and unit testing.

Exercises and examples are used throughout the course to give practical hands-on experience with the techniques covered.

The delegate will learn and acquire skills as follows:

  • Reading/writing text and binary files
  • Declaring and initialising variables
  • Constructing expressions with all operator types
  • Using conditional statements
  • Using iterative statements
  • Manipulating text using regular expressions
  • Declaring and using modules
  • Using and creating Python objects
  • Using built-in library functions
  • Using lists and dictionaries
  • Interacting with the email system
  • Interacting with databases
  • Encapsulating classes
  • Exploiting polymorphism using inheritance and mixins
  • Associating objects via composition and aggregation
  • Working with static members
  • Using iterators as an alternative to for
  • Constructing custom iterators
  • Constructing functions that yield generators
  • Manipulating lists, sets, and dictionaries using comprehension
  • Exploiting aspect oriented programming using decorators
  • Writing multithreaded code
  • Sharing data between threads
  • Processing collections using lambdas
  • Building RESTful clients
  • Building RESTful APIs
  • Testing units of code

Who will the Course Benefit?

The Python Programming 1 & 2 course is designed for existing developers who are migrating to Python from another language, or who are required to learn Python in addition to some other language.

It assumes the delegate has some experience programming in another language and has some awareness of object oriented techniques (though it is not essential that the delegate has programmed in an OO language previously).

This course is not suitable for delegates whom are new to programming. This course is specifically designed for those delegates migrating to Python from another language, i.e. already competent programmers. For the delegate for whom Python is their first programming language, we recommend taking the Python Programming 1 course first, then taking some time to practice the skills gained, before returning to take the Python Programming 2 course.

Course Objectives

This course aims to provide the delegate with the knowledge to be able to produce Python applications that exploit all core elements of the language including input/output, variables, expressions, selection and iteration, functions, modules, classes and objects, email, and database operations.

It further aims to provide the delegate with the knowledge to be able to write and troubleshoot complex Python applications exploiting inheritance and polymorphism, mixins, composition and aggregation, iterators, generators, decorators, comprehension, concurrency, functional programming, and RESTful web services.

Requirements

Delegates should be able to build simple applications in a language other than Python that exploit standard programming techniques including sequence, selection, iteration, and reuse (functions). Ideally the delegate will have written some object oriented code but should at least have some awareness of object oriented techniques.

Notes:
  • Course technical content is subject to change without notice.
  • Course content is structured as sessions, this does not strictly map to course timings. Concepts, content and practicals often span sessions.


 

Course Contents

Python Programming 1 & 2 Training Course

Course Introduction

  • Administration and Course Materials
  • Course Structure and Agenda
  • Delegate and Trainer Introductions

Session 1: INTRODUCTION TO PYTHON

  • What is PYTHON and why PYTHON is useful
  • Installing Python
  • The IDLE editor
  • A simple PYTHON Program

Session 2: PYTHON BASICS

  • How to run PYTHON programs on UNIX and Windows platform
  • Lines and Indentation
  • Multiple line Statements
  • Quotation Marks
  • Reserved Words in Python
  • Python Suites
  • Input
  • Output
  • Working with Files
  • Labs

Session 3: PYTHON VARIABLES

  • Assignments
  • Data Types
  • Numbers
  • Strings
  • Lists
  • Tuples
  • Dictionaries
  • Labs

Session 4: PYTHON OPERATORS

  • Arithmetic Operators
  • Comparison Operators
  • Assignment Operators
  • Bitwise Operators
  • Logical Operators
  • Membership Operators
  • Identity Operators
  • Operator Precedence
  • Labs

Python Programming 1 & 2 Training Course

Session 5: CONDITIONAL AND CONTROL STATEMENTS

  • if elif else constructs
  • while and for Loops
  • Iteration
  • Labs

Session 6: FUNCTIONS

  • Creating Functions
  • Def Statement
  • Calling functions
  • Scoping variables
  • Passing arguments
  • Labs

Session 7: MODULES

  • What is a module
  • Standard modules
  • How to define and code a module
  • Using import
  • Argument passing and return values from a module
  • Labs

Session 8: PATTERN MATCHING

  • The re module
  • How pattern matching works
  • Pattern matching operators
  • Pattern matching special characters
  • Labs Part 1
  • Pattern matching options
  • Pattern substitution
  • Pattern tagging
  • Translation
  • Labs Part 2

Python Programming 1 & 2 Training Course

Session 9: Python OO

  • Why use OO
  • Creating a simple class
  • Inheritance
  • Passing data into a class
  • More complex classes
  • Labs

Session 10: EXCEPTIONS

  • What are exceptions
  • Default Handler
  • catch/try/raise Statements
  • Class Based Exceptions
  • What Not To Do
  • Labs

Session 11: WORKING WITH EMAIL

  • Simple emails
  • HTML Emails
  • Working with Attachments
  • Labs

Session 12: WORKING WITH DATABASES

  • Python and Databases
  • Connecting to MySQL Database
  • Working with tables /Records

Python Programming 1 & 2 Training Course

Session 13: ADVANCED OBJECT ORIENTATION

  • The self Keyword
  • Constructors and Destructors
  • Encapsulation
  • Inheritance
  • Polymorphism
  • Abstract Classes
  • Multiple Inheritance and Mixins
  • Composition and Aggregation
  • Static Members

Session 14: ITERATORS & GENERATORS

  • Iterables
  • Iterators
  • Custom Iterators
  • Generators
  • Yield vs. Return

Session 15: COMPREHENSIONS

  • List Comprehension
  • Set Comprehension
  • The zip Function
  • Dictionary Comprehension

Session 16: DECORATORS

  • Decorators
  • Decorator Functions
  • Decorator Annotations
  • Decorator Use Cases
  • Labs

Python Programming 1 & 2 Training Course

Session 17: MULTITHREADING

  • Threads
  • Multithreading
  • Thread Construction
  • Thread Execution
  • Thread Sleep
  • Joins
  • Data Sharing
  • Synchronisation
  • Multithreading vs. Multiprocessing

Session 18: FUNCTIONAL PROGRAMMING

  • Functional Programming
  • Lambdas
  • Immutability
  • Mapping
  • Filtering
  • Reducing

Session 19: WEB SERVICES

  • RESTful Web Services
  • JSON Data
  • CRUD and HTTP
  • RESTful Clients
  • RESTful APIs

Session 20: UNIT TESTING

  • Unit Testing Terminology
  • Test Classes
  • Test Fixtures
  • Test Cases
  • Assertions
  • Test Runners
 

Python Programming 1 & 2

Duration: 5 days

RRP: £2,100.00 exc. VAT 


Upcoming Scheduled Events
Next 6 months

London
Start Date   Spaces Book
25 Feb 2019
StayAhead Virtual Courses available 
Limited StayAhead - Course Running Book
 
Virtual Events StayAhead Virtual Courses available You can attend your training virtually using the London dates shown above. Those events highlighted with StayAhead Virtual Courses available already have virtual delegates booked. Please contact us for more details on our Virtual training options or to discuss specific Virtual course dates to meet your requirements.
 

Course Reviews

I found this to be a very informative course and this definitely filled in any gaps I had within my knowledge of the Python programming language. The instructor was very professional and had a very good understanding of python. I would definitely recommend this course for anyone who already has experience coding in python and wants to further develop their python programming skills.

Stuart - Communications - January 2019


Very good instructor for this training covering in depth aspects of subject area.

Kermdip Singh - DBA - December 2018


Very a good trainer for this course. His wealth of knowledge is excellent and his teaching skills are in line as well.

Alya - Finance - October 2018


More Course Reviews....

It was an exceptionally good training course both in content and delivery. I would definitely recommend this course to other colleagues. Very knowledgeable, patient and competent trainer.

Kimon - Solutions Architect - IT - May 2018


The tutor was engaging and taught at a good pace. The practicals helped a lot in understanding, the concepts explained. Would recommend highly recommend.

Mike - Verification Engineer - IT - May 2018


The tutor was friendly, engaging, helpful and managed to hold my attention throughout the course - which is an achievement in itself . He was well organised and was always on time. It's definitely one of the better courses that I've been on and I look forward to using my new skills in real life. If I could provide constructive criticism I would, but I honestly couldn't find anything to criticise.

Tim - Firmware Engineer - IT - May 2018


 
 
 
 

 

Course Deliveries

Public Scheduled and Closed
Virtual
UK and Overseas

OUG

Oracle User Group - Membership Benefits

OUG

Certification

Our independent Oracle, Solaris & Red Hat Linux curriculums helps prepare delegates for official certification.

StayAhead
Flexibility

Cannot see a sutiable date?
Please call us and we will try an accommodateyour needs!




Our Course Curriculum

 
 
 



Our Ratings

Instructor
Quality
 

97.43%

Course
Practical
 

92.51%

Overall
Courseware
 

94.25%

Overall
Course
 

96.43%

+44 (0)20 7600 6116
sales@stayahead.com
Copyright © 2019 StayAhead Training Ltd
Cookies   /   Privacy Policy