This is a beginner course suitable for anyone wanting to use Python for developing applications, writing test for QA or using it for system administration.
Course objectives:
- To be able to write programs in Python.
- To master the rich set of Python libraries and modules.
- Understand procedural control flow in Python
- Use Object Oriented programming techniques
Course format:
- Duration of the course is 5 days.
- The course includes approximately 40% hands on lab work.
- The course can be given in either using Python 2 or Python 3
- Prerequisites:
- Experience with a text editor like emacs, vi, pico or notepad.
- Understanding of files and directories.
Syllabus:
Introduction to Python:
- Installing Python
- Where and why to use Python
- Using the Python interactive interpreter
- Documentation and how to get help?
- Indentation
Types and operators:
- Strings
- Numbers
- Lists (arrays)
- Tuples
- Dictionaries (hashes)
- Sorting
Functions subroutines:
- Function parameters
- Positional parameters
- Named parameters
- Default values
- Optional parameters
- Return values
- Function documentation
- Lambda functions
Control flow:
- For loops
- While loops
- Loop controls
- Conditionals
- Chained comparison
- Enumerate
- Boolean and logical operators
IO:
- print
- print formatting
- read/write files
Regular expression (pattern matching):
- Matching all
- Searching for a single match
- Meta characters
- Character classes
- Special character classes
- Quantifiers
- Alternatives
- Modifier flags
- Anchors
- Back-references
- Substitution
The Python standard library:
- Filesystem related functions
- Running external processes
Creating modules:
- Loading a module
- Finding a module in a private directory
- Changing the search path to a relative directory
- Importing selected functions
- Namespaces
- Creating executable module
Exception handling:
- Creating non-fatal warnings
- Catching exceptions
- Handling exceptions
- Throwing a new exception
- The final block
- Creating your own exception
Object Oriented Programming:
- Defining classes
- Initializing objects
- Methods
- Attributes or members
- The self
- Inheritance
• Additional uses:
- Installing and using 3rd party modules
- Writing simple web scraping program
- Writing a simple Web application
- Accessing SQL databases
- Reading and writing Excel files
Extra topics:
- Version control with Git.
- General differences/attributes of other programming languages.
- Basic complexity calculation.
-
Gabor Szabo Training (Hostlocal Ltd.)
gabor@szabgab.com http://szabgab.com/
+972-54-4624648