1300 888 724 8.30am to 5:30pm AEST (Mon-Fri) info@dynamicwebtraining.com.au

Python Intermediate Course

About the Course

This 3-day Python intermediate course extends the skills you have learned at the Beginner level. Highlights of this course include learning how to structure your code with packages; succinctly define functionality using lambda expressions; and quickly extend or modify existing functions by using decorators and closures. Students will also learn how to improve code by using properties instead of attributes and understanding the difference between static and class methods and how to override them. We will also go deeper into formatting strings and using different number types, such as complex numbers.

Who should do this course?

This course is ideal for those who know the basic principles of Python but would like to delve deeper. It is perfect for people who have just finished the Python beginner course or those who have been fixing or extending other peoples’ code and now want to write their own. This includes people who may have dabbled in Python but would like to take their Python skills to the next level.

This course will help you understand not just how to do things but why we do them that way. In short, this course will enable you to develop the skill required to be a professional well-rounded Python programmer.

Prerequisites

The course assumes you have completed the beginners' course or have equivalent knowledge of Python Programming. Students must know the fundamental object-oriented concepts and use Python to develop both modules and scripts. You will need to understand and be able to use the different datatypes in Python, create classes and functions, and work with collections, comprehensions, and generators. This course also assumes you are familiar with handling exceptions and testing and debugging your code.

Course Details

  • $1980 incl GST
  • Duration: 3 Days
  • Max. Class Size: 10
  • Avg. Class Size: 5
  • Study Mode: Classroom Online Live
  • Level: Intermediate
  • Times: 9.00am to 5.00pm approx
  • Download Course PDF
  • Enquire Book Now
    Pay later

Course Dates

  • Sydney Class Dates

    Book Now

    Level 11, 32 Walker Street, North Sydney , NSW 2060

    16 - 18 Aug 21 Mon - Wed Classroom
    16 - 18 Aug 21 Mon - Wed Online Live
    01 - 03 Sep 21 Wed - Fri Classroom
    01 - 03 Sep 21 Wed - Fri Online Live
    15 - 17 Sep 21 Wed - Fri Classroom
    15 - 17 Sep 21 Wed - Fri Online Live
    20 - 22 Oct 21 Wed - Fri Classroom
    20 - 22 Oct 21 Wed - Fri Online Live
    29 Nov - 01 Dec 21 Mon - Wed Classroom
    29 Nov - 01 Dec 21 Mon - Wed Online Live
  • Melbourne Class Dates

    Book Now

    Level 12, 379 Collins Street, Melbourne , VIC 3000

    16 - 18 Aug 21 Mon - Wed Classroom
    16 - 18 Aug 21 Mon - Wed Online Live
    01 - 03 Sep 21 Wed - Fri Classroom
    01 - 03 Sep 21 Wed - Fri Online Live
    15 - 17 Sep 21 Wed - Fri Classroom
    15 - 17 Sep 21 Wed - Fri Online Live
    20 - 22 Oct 21 Wed - Fri Classroom
    20 - 22 Oct 21 Wed - Fri Online Live
    29 Nov - 01 Dec 21 Mon - Wed Classroom
    29 Nov - 01 Dec 21 Mon - Wed Online Live
  • Brisbane Class Dates

    Book Now

    Level 6, 371 Queen Street, Brisbane , QLD 4000

    16 - 18 Aug 21 Mon - Wed Online Live
    01 - 03 Sep 21 Wed - Fri Online Live
    15 - 17 Sep 21 Wed - Fri Online Live
    20 - 22 Oct 21 Wed - Fri Online Live
    29 Nov - 01 Dec 21 Mon - Wed Online Live
  • Canberra Class Dates

    Book Now

    Level 4, 54 Marcus Clarke Street, Canberra , ACT 2601

    16 - 18 Aug 21 Mon - Wed Online Live
    01 - 03 Sep 21 Wed - Fri Online Live
    15 - 17 Sep 21 Wed - Fri Online Live
    20 - 22 Oct 21 Wed - Fri Online Live
    29 Nov - 01 Dec 21 Mon - Wed Online Live
  • Adelaide Class Dates

    Book Now

    19 Young Street, Adelaide , SA 5000

    16 - 18 Aug 21 Mon - Wed Online Live
    01 - 03 Sep 21 Wed - Fri Online Live
    15 - 17 Sep 21 Wed - Fri Online Live
    20 - 22 Oct 21 Wed - Fri Online Live
    29 Nov - 01 Dec 21 Mon - Wed Online Live
  • Perth Class Dates

    Book Now

    Level 1, 140 St Georges Terrace, Perth , WA 6000

    16 - 18 Aug 21 Mon - Wed Online Live
    01 - 03 Sep 21 Wed - Fri Online Live
    15 - 17 Sep 21 Wed - Fri Online Live
    20 - 22 Oct 21 Wed - Fri Online Live
    29 Nov - 01 Dec 21 Mon - Wed Online Live

Course Units

Expand full topic list

Unit 1: Organizing Larger Programs

  • Introducing Packages
  • Implementing Packages
  • Using Relative Imports
  • Using __all__
  • Understanding Namespace Packages
  • Defining Executable Directories
  • Defining Executable Packages
  • Investigating Recommended Layouts
  • Understanding Modules as Singletons

See more

Unit 2: Beyond Basic Functions

  • Reviewing Functions
  • Understanding Functions as Callable Objects
  • Understanding Callable Instances and Using the __call__() Method
  • Understanding Classes are Callable
  • Leveraging Callable Classes
  • Using Lambdas
  • Detecting Callable Objects
  • Extending Formal Parameter Syntax
  • Extending Call Syntax
  • Transposing Tables

See more

Unit 3: Closures and Decorators

  • Understanding Local Functions
  • Understanding Closures and Nested Scopes
  • Using Function Decorators
  • Validating Arguments

See more

Unit 4: Properties and Class Methods

  • Using Class Attributes
  • Using Static Methods
  • Using Class Methods
  • Developing Named Constructors
  • Overriding Static- and Class-Methods
  • Understanding Properties
  • Overriding Properties
  • Understanding the Template Method Pattern

See more

Unit 5: Strings and Representations

  • Understanding the Two String Representations
  • Using repr()
  • Using str()
  • Understanding When to use Representation
  • Using Format()
  • Leveraging Reprlib for Large Strings
  • Using the ascii(), ord() and chr() Built-in Functions

See more

Unit 6: Numeric and Scalar Types

  • Using Python’s Basic Numeric Types
  • Understanding the Limits of Floats
  • Using the Decimal Module
  • Using the Fractions Module
  • Using Complex Numbers
  • Using Built-in Functions Relating to Numbers
  • Using Dates and Times with the Datetime Module

See more

Unit 7: Iterables and Iteration

  • Reviewing Comprehensions
  • Understanding Multi-Input Comprehensions
  • Understanding Functional-Style Tools
  • Using map()
  • Using filter()
  • Using functools.reduce()
  • Combining Functional Concepts: Map-Reduce
  • Investigating the Iteration Protocols

See more

Unit 8: Inheritance and Subtype Polymorphism

  • Reviewing Single Inheritance
  • Using Type Inspection
  • Understanding Multiple Inheritance
  • Investigating Method Resolution Order
  • Using Super()
  • Understanding Object
  • Using Inheritance for Implementation Sharing

See more

Unit 9: Implementing Collections with Protocols

  • Understanding Collection Protocols
  • Using Test First
  • Using the Initializer
  • Investigating the Container Protocol
  • Investigating the Sized Protocol
  • Investigating the Iterable Protocol
  • Investigating the Sequence Protocol
  • Investigating the Set Protocol

See more

Unit 10: Errors and Exceptions in Depth

  • Understanding Exception Dangers
  • Using Exceptions Hierarchies
  • Utilising Exception Payloads
  • Creating User-Defined Exceptions
  • Using Exception Chaining
  • Using Tracebacks
  • Using Assertions
  • Using Assertions to Enforce Preconditions
  • Using Assertions to Enforce Postconditions

See more

Unit 11: Defining Context Managers

  • Understanding the Context Manager
  • Implementing a Context Manager
  • Using contextlib.contextmanager
  • Handling Multiple Context-Managers in a With-Statement
  • Using Context Managers for Transactions

See more

Unit 12 - Introspection

  • Introspecting Types
  • Introspecting Objects
  • Introspecting Scopes
  • Using the Inspect Module
  • Building an Object Introspection Tool

See more

Related Courses

Enquire Now

Fill in your details to have a training consultant contact you to discuss your training needs.

Your details

Other Ways To Get In Touch

You can also Book Online or call us on 1300 888 724

Back to Top