Course description
The Python Programming 2 course comprises sessions dealing with advanced object orientation, iterators and generators, comprehensions, decorators, multithreading, functional programming, web services, and unit testing.
The delegate will learn how to exploit advanced features of the Python language to build complex and efficient applications.
Exercises and examples are used throughout the course to give practical hands-on experience with the techniques covered.
Who will the Course Benefit?The Python Programming 2 course is designed for existing Python developers who have a good grounding in the basics and want to exploit some of the advanced features of the language.
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 ObjectivesThis course aims to provide the delegate with the knowledge to be able to interpret, 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.
Upcoming start dates
Suitability - Who should attend?
Delegates should be able to build Python applications that exploit all fundamental elements of the language including variables and expressions, conditions and loops, functions, objects, and lists. This knowledge can be gained by attendance on the pre-requisite Python Programming 1 course.
Experience to the level as demonstrated in this course is recommended:
- Python Programming 1
Training Course Content
Python Programming 2 Training Course
Course Contents - DAY 1
Course Introduction- Administration and Course Materials
- Course Structure and Agenda
- Delegate and Trainer Introductions
- The self Keyword
- Constructors and Destructors
- Encapsulation
- Inheritance
- Introspection with __dict__, __name__, __module__, __bases__
- The hasattr(obj,attr), dir(obj), help(obj) functions
- Polymorphism
- Abstract Classes
- Multiple Inheritance and Mixins
- Composition and Aggregation
- Static Members
- Iterables
- Iterators
- Custom Iterators
- Generators
- Yield vs. Return
- List Comprehension
- Set Comprehension
- The zip Function
- Dictionary Comprehension
Course Contents - DAY 2
Session 4: DECORATORS- Decorators
- Decorator Functions
- Decorator Annotations
- Decorator Use Cases
- Labs
- Functional Programming
- Lambdas
- Immutability
- Mapping
- Filtering
- Reducing
- Threads
- Multithreading
- Thread Construction
- Thread Execution
- Thread Sleep
- Joins
- Data Sharing
- Synchronisation
- Multithreading vs. Multiprocessing
Course Contents - DAY 3
Session 7: WEB SERVICES- RESTful Web Services
- JSON Data
- CRUD and HTTP
- RESTful Clients
- RESTful APIs
- Unit Testing Terminology
- Test Classes
- Test Fixtures
- Test Cases
- Assertions
- Test Runners
Customer Outreach Award
We believe that it should be easy for you to find and compare training courses.
Our Customer Outreach Award is presented to trusted providers who are excellent at responding to enquiries, making your search quicker, more efficient and easier, too.
Continuing Studies
Further Learning
- Data Analysis Python
Request info
Why StayAhead. From a single person on a scheduled course to large scale training projects StayAhead Training have the expertise and experience to help. Established since 1992, StayAhead Training is recognised as one of the leading independent IT Training specialists...