Subscribe to Newsletter

Print

Python Training Course


(This course is offered only on-demand to a private batch and can be customized as per the business requirements)

Overview

Python Fundamentals is a 4-day training course in the Python language and its many applications. The course covers the language itself, explains object-oriented as well as functional programming techniques, error handling, packaging, system and network programming, many of the Python extensions (libraries), as well as best practices.

Objectives

This is a fast-paced lab course, designed to bring seasoned programmers up-to-speed in Python, as quickly as possible. At the end of Python training course, the participants will experience:

  • Pythonic thinking.
  • Python's input and output details: stdio and file io.
  • Python's interesting and extra-useful flow-of-control devices.
  • Python's simple and robust error handling.
  • Python's flexible function protocols.
  • Python's memory model.
  • Python's straight-forward object-oriented features.
  • Python's built-in data types: Using them and inheriting from them in classes you design.
  • Python's list comprehensions, decorators, iterators, generators, context managers.
  • Python's scheme for creating and using libraries and packages.
  • Python's handy libraries for many developer/administrator tasks: shutil, tempfile, subprocess, glob, profile, shelve, os, sys, optparse, unittest.
  • Python's architecture, which allows you to get working very quickly with any Python library (there are thousands).

Audience - This course is designed for developers, system administrators, and QA engineers, who wish to develop, automate, and test applications and systems using one of the most powerful programming languages available today.

Duration - 4 Days

Prerequisites - Attendees should have prior programming experience and be familiar with basic concepts such as variables/scopes, flow-control, and functions. Prior exposure to object-oriented programming concepts is not required, but definitely beneficial.

Syllabus

1. Output
  • Executing a Python program
  • Syntax: code blocks, colons
  • if, elif and else
  • while and another else
  • Writing to stdout
  • Relational and logical operators
2. Input
  • Input from stdin
  • Factory functions
  • Catching an exception:
    • yet another else
  • Formatted strings
  • Integer division issue
3. For range
  • Range operator
  • for loop
  • Tuples
4. Functions
  • Function protocols
  • import and reload
  • Module: random
  • Introspection
5. Scope
  • Identifier scope
  • Default arguments
  • Keyword arguments
6. Sequences
  • Sequence types: str, tuple, list
  • Sequence slicing and other manipulations
7. Important Trick
  • Module: sys
  • Module: sys
    • _name_and_'_main_'
  • Valid identifiers
8. Comprehensions
  • Scope issues
  • List comprehensions
9. Dictionaries
  • Importing with from
  • Dictionaries
10. File IO
  • File I/O
  • Module: os
  • Walking A Directory
11. Packages
  • Modules: shutil, tempfile
  • Python Packages
  • Debugging
12. Dynamic Code
  • Dynamic Code Generation
  • Modules:
    • subprocess
    • glob
    • profile
13. Function Fancies
  • Function protocols: variable length argument lists
  • Formatted printing using a dictionary for replacement
  • Unpacking sequences and dictionaries
  • Generators (Optional)
  • Decorators (Optional)
14. OOP
  • Module: shelve
  • Classes
  • Inheritance
  • Class variable
15. Overriding
  • Overriding
  • Has-A v/s Is-A relationships
16. New Style Classes
  • Useful attributes
  • Iterators
  • New style classes
  • Attribute control (Optional)
  • property (Optional)
  • Static methods (Optional)
  • Class methods (Optional)
  • Diamond inheritance (Optional)
17. Developer Modules
  • Context Manager class
  • Module: unittest
  • Module: optparse
18. Wrap Up
  • Exceptions
  • Namespaces
  • Nests
  • Pitfalls
  • Finding Modules and Help
19. re Module
  • re - Regular Expressions
  • Search and replace
  • Named groups
20. re Syntax
  • Regular expression syntax
  • Testing regular expressions