
Pythons Type System
a_variable = 42
print(f’a_variable type = {type(a_variable)} = {a_variable}’)
a_variable = 1.345
print(f’a_variable type = {type(a_variable)} = {a_variable}’)
a_variable = « Hello »
print(f’a_variable type = {type(a_variable)} = {a_variable}’)
a_variable = True
print(f’a_variable type = {type(a_variable)} = {a_variable}’)
a_variable type = <class 'int'> = 42 a_variable type = <class 'float'> = 1.345 a_variable type = <class 'str'> = Hello a_variable type = <class 'bool'> = True
The Challenge for Python Developers
They need to understand what types are required.
def add(x, y):
return x + y
print(add(1, 2))
print(add(1.2, 3.4))
print(add(1, 3.4))
print(add(5.5, 1))
print(add(« Hi », « There »))
3
4.6
4.4
6.5
HiThere
Python Type Hints
Python classes are very flexible, they allow data and behavior to be defined when the class is created, but also dynamically at any point in the lifetime of the class and its instances. This technique is known as Monkey Patching and can be extremely useful.
Les Class, c’est tout un art! Intégrer la définition et les méthodes pour ici effectuer une recherche comparative, c’est brillant!

Structural Pattern Matching
On commence par définir un décorateur (* Un décorateur Python est une fonction qui prend une autre fonction en paramètre et retourne une nouvelle fonction. Il permet d’ajouter des fonctionnalités ou de modifier le comportement d’une fonction existante sans en altérer son code source. La syntaxe utilisant le symbole « @ » est la manière la plus courante pour appliquer un décorateur. *)

On y ajoute une fonction handle_click qui vérifie les paramètres de la classe Click, s’il y a bien 2 paramètres. C’est ainsi une sécurité dans le transfert des paramètres! Ensuite, on teste le tout!
The pprint Data Printer Module

