Practical Introduction to Python Development

Unlock the power of Python with our Practical Introduction to Python Development course, designed for aspiring developers looking to master scripting, data processing, and web development using practical, real-world applications.

Course Thumbnail

Essential Skills Gained

Checkmark

Understand and implement Python's features and tools.

Checkmark

Write, run, and debug Python programs and scripts.

Checkmark

Organize and manage code with OOP and functional programming.

Checkmark

Leverage Python libraries and tools for various applications.

Format

  • Instructor-led
  • 5 days with lectures and hands-on labs.

Audience

  • Junior Programmers
  • Data Analysts
  • Automation Engineers
  • Web Developers

Description

Python is a very popular open-source, high-level programming language used for a broad assortment of programming tasks. This course is designed to introduce best practices in Python development, and to build a strong foundation for students to go on to use Python in creating one-off utilities, processing data, creating automated test scripts, machine learning, and web development. A balanced mixture of theory and labs demonstrate practical usage of Python and are designed to give students real-world understanding and experience.

Calendar icon

Upcoming Course Dates

No upcoming dates. Please check back later.

Course Outline

Download PDF

Introductions

  1. Course Objectives and overview of what teams will be building

  2. Course Logistics

  3. Getting Course Demos & Solutions using Git

Overview of Python

  1. What is Python?

  2. Where Python is used: machine learning, web, scripting

  3. Python history

  4. Python 2 versus 3

Setting up environment and leveraging tools

  1. Development environment Setup

  2. Installing python on different Operating Systems (OS)

  3. Using the Python Interpreter

  4. Scripting versus interactive mode

  5. Jupyter Notebook

  6. Python editors and IDEs

  7. Using VSCode for python

  8. Getting help with pydoc

Python basics in Interactive mode and simple scripts

  1. Interactive mode versus scripts

  2. Creating variables and working with built-in types

  3. Naming conventions & keywords

  4. Representing Strings and working with operators & methods

  5. Numeric types and math operations

  6. Converting types

  7. Using print() to display to the screen

  8. Executing scripts

  9. Script comments

Conditional Programming & Flow control

  1. Using indentations for defining blocks

  2. When to use if, elif and else

  3. Boolean operators

  4. Relational operators

  5. Creating and controlling loops

Debugging in Python

  1. What is debugging and why do we use it?

  2. Using the pdb Module

  3. Tracing

  4. Stepping Through Code

  5. Seeing Where You Are with l

  6. Printing Variables

  7. Finding a Bug

  8. Working interactively

Leveraging Functions

  1. Defining functions

  2. Attribute references and instantiation

  3. Default arguments

  4. Keyword arguments

  5. Arbitrary argument lists

  6. Using argument lists

  7. Documentation Strings

  8. Function annotations

  9. Recursion

Data Structures and their practical applications

  1. Immutable/Mutable types

  2. Sequence Types - list, tuple, range

  3. Storing and selecting multiple values in Lists

  4. Working with immutable Tuples

  5. Optimizing loops using range()

  6. Storing and working with unique values in Sets

  7. Mapping with Dictionaries

Errors and Exceptions

  1. Syntax Errors

  2. Runtime Errors

  3. Exceptions

  4. Built-in Exceptions

  5. Handling Exceptions: try & except

  6. Handling Exceptions: finally

  7. Raising Exceptions

  8. Ignoring Exceptions

  9. User-defined Exceptions

  10. Clean-up Actions

Defining reusable Modules

  1. Module definition basics

  2. Import Modules

  3. Reload Modules

  4. Python Standard Library

  5. Using packages to structure module namespace

  6. Installing 3rd party packages with PIP

Input and Output

  1. Using the built-in sys module

  2. Getting input from the command line

  3. Getting input from the keyboard

  4. Reading and Writing Files with File Objects

Classes & Object-Oriented Programming (OOP)

  1. What is OOP?

  2. Python Classes and creating objects

  3. Scope and Namespaces

  4. Defining instance and class attributes

  5. Method Objects

  6. Inheritance and Polymorphism

  7. Multiple Inheritance in Python

  8. Overloading operators

Exploring the Standard Library modules

  1. The os module

  2. Logging

  3. Math module

  4. 're' Regular Expression tools

  5. Dates and Times

  6. Timeit

  7. Email package

  8. Json package

  9. Multi-threading

  10. Data Compression and Archiving

Functional Programming

  1. Lambda Functions

  2. Recursion

  3. List Comprehensions

  4. Iterators, Generators, Yield

  5. Map, reduce, filter

Unit Testing Options

  1. What is a Unit Test?

  2. The unittest framework, nose, and PyTest

  3. Asserting

  4. Creating Unit Tests

  5. Organizing Test Code

  6. Discovering Unit Tests

  7. Running Unit Tests

  8. Skipping Tests

Examples of python usage

  1. Scripting

  2. Raspberry Pi

  3. Web, Django and Flask

  4. Machine Learning

Your Team has Unique Training Needs.

Your team deserves training as unique as they are.

Let us tailor the course to your needs at no extra cost.