Course : Python: Advanced

Python: Advanced

Download in PDF format Share this course by email 2


The Python language has become a technological foundation for the development of large software projects. In this course, you’ll implement the advanced techniques of Python as well as its main libraries in order to meet the quality requirements of these projects.


Inter
In-house
Custom

Practical course in person or remote class

Ref. PYA
Price : 2390 € E.T.
  4d - 28h00




The Python language has become a technological foundation for the development of large software projects. In this course, you’ll implement the advanced techniques of Python as well as its main libraries in order to meet the quality requirements of these projects.

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

Intended audience
Engineers and developers.

Prerequisites
Good knowledge of Python development, or knowledge equivalent to that provided by the THO or PYT courses. Experience required.

Course schedule

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.

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.

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.

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.

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.

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.


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).

Customer reviews
4,3 / 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.


Dates and locations
Select your location or opt for the remote class then choose your date.
Remote class