Course : Python: Advanced

Practical course - 4d - 28h00 - Ref. PYA
Price : 2630 CHF E.T.

Python: Advanced



Required course



INTER
IN-HOUSE
CUSTOM

Practical course in person or remote class
Disponible en anglais, à la demande

Ref. PYA
  4d - 28h00
2630 CHF E.T.






Teaching objectives
At the end of the training, the participant will be able to:
Rigorous implementation of recognized design patterns
Use the advanced techniques of the Python language: Context Manager, metaclasses, closures, advanced functions
Optimize the performance of your programs with the help of monitoring and parallelism
Package and deploy Python artifacts
Exploit libraries that help make the language a success: scientific computing, Artificial Intelligence, XML, networks

Practical details
Teaching methods
The course is made up of theory, illustrated by examples of code, then strengthened by creating a mini-project (70% hands-on work).

Course schedule

1
Important reminders about the language.

  • Assignment by reference and mutable/immutable data types.
  • Passing arguments, default values and local variables.
  • Class and instance variables.
  • Advanced slices and data structures.
  • Introspection.
  • Advanced elements of control structures: the else clause of “for, while, try/except” statements.
Hands-on work
Optimization: intersection of lists and computing algorithm complexity.

2
Advanced features

  • Advanced use of decorators (generation to consumption, consumer pipeline).
  • Decorators and design patterns.
  • Closure.
Hands-on work
Chaining data consumers. Subscription to events via decorators.

3
Advanced Object-Oriented Programming

  • The properties.
  • Iterators.
  • Multiple inheritance and its shortcomings.
  • Context managers.
  • Abstract base classes and methods (ABCs).
  • Metaclasses.
Hands-on work
Implement a metaclass to create singleton classes.

4
Deployment and quality

  • Installing third party libraries (pip, easy_install).
  • The Python Package Index (PyPI).
  • Packaging your libraries (distutils, setuptools).
  • Deploying a standalone environment (virtualenv and buildout).
Hands-on work
Packing a library and putting it on PypI.

5
Parallelism: Optimizing the performance of your programs

  • Profiling your programs with Timeit and cProfile.
  • Parallelization: Avoid multithreading and go for multiprocessing.
  • Distributed computing with the Celery library.
Hands-on work
Distribute and consolidate (Map Reduce) computing with Celery.

6
Libraries that help make the language a success

  • Scientific computing and statistics with Numpy, Scipy, Matplotlib and Pandas.
  • Artificial Intelligence and learning algorithms with Scikit-Learn.
  • Finding information in XML files with ElementTree.
  • Network: tcp relay with Twisted and SNMP monitoring with PySNMP.
Hands-on work
Extracting information from XML log files, filters and statistics on the collected data and graphical representation using information trends.


Customer reviews
4,4 / 5
Customer reviews are based on end-of-course evaluations. The score is calculated from all evaluations within the past year. Only reviews with a textual comment are displayed.
MOHAMED C.
23/06/26
5 / 5

Interesting and varied content. The trainer’s teaching methods were excellent, and they really encouraged interaction during the practical sessions.
THEO L.
23/06/26
5 / 5

A very satisfactory training course, both in terms of content and teaching methods. The trainer was approachable and attentive, and answered all our questions. I particularly appreciated the opportunity to request bespoke practical exercises on topics of our choice.
NORA B.
26/05/26
5 / 5

A highly dedicated trainer



Publication date : 04/02/2024



This programme is an original creation, developed by the teaching teams at ORSYS Formation. Any reproduction, representation, adaptation or use, in whole or in part, without the prior written authorisation of ORSYS, is strictly prohibited. ORSYS reserves the right to take any action necessary to protect its intellectual property rights.

Dates and locations

Dernières places
Date garantie en présentiel ou à distance
Session garantie
From 27 to 30 October 2026
FR
Remote class
Registration
From 17 to 20 November 2026 *
FR
Remote class
Registration
From 8 to 11 December 2026 *
FR
Remote class
Registration
From 8 to 11 December 2026
EN
Remote class
Registration
From 9 to 12 February 2027
FR
Remote class
Registration
From 9 to 12 February 2027
EN
Remote class
Registration
From 27 to 30 April 2027
FR
Remote class
Registration
From 27 to 30 April 2027
EN
Remote class
Registration
From 18 to 21 May 2027
FR
Remote class
Registration
From 8 to 11 June 2027
FR
Remote class
Registration
From 28 September to 1 October 2027
FR
Remote class
Registration
From 28 September to 1 October 2027
EN
Remote class
Registration
From 26 to 29 October 2027
FR
Remote class
Registration
From 16 to 19 November 2027
FR
Remote class
Registration
From 14 to 17 December 2027
FR
Remote class
Registration
From 14 to 17 December 2027
EN
Remote class
Registration

REMOTE CLASS
2026 : 27 Oct., 17 Nov., 8 Dec., 8 Dec.

2027 : 9 Feb., 9 Feb., 27 Apr., 27 Apr., 18 May, 8 June, 28 Sep., 28 Sep., 26 Oct., 16 Nov., 14 Dec., 14 Dec.



This programme is an original creation, developed by the teaching teams at ORSYS Formation. Any reproduction, representation, adaptation or use, in whole or in part, without the prior written authorisation of ORSYS, is strictly prohibited. ORSYS reserves the right to take any action necessary to protect its intellectual property rights.