Créer une classe pour manipuler des chemins - Docstring

Dans cet exercice, on continue avec les classes : l'objectif va être de créer une classe Path qui va simplifier la manipulation de chemins vers des dossiers ou fichiers sur notre disque dur.

Pour les besoins de cet exercice nous allons créer 4 méthodes et propriétés et nous considérerons que nous sommes sur un système unix (donc avec des slashes dans le 'bon' sens : /) :

  • Une propriété ext pour récupérer l'extension du fichier.

  • Une propriété basename pour récupérer le nom du fichier uniquement (donc sans le dossier parent et sans l'extension).

  • Une méthode dirname qui va récupérer le dossier parent du chemin actuel. Cette méthode devra retourner un objet Path pour que l'on puisse appliquer de nouveau la méthode dirname sur le résultat précédent.

  • La méthode __str__ qui devra retourner le chemin sous forme de chaîne de caractères. Ainsi, quand nous ferons un print de notre chemin, cela nous permettra de voir le chemin directement et non l'instance (ex: "/Users/thibh/Documents/test.txt" au lieu de <__main__.Path object>).

Notre script devra donc exécuter et retourner les lignes de code suivantes :

>>> s = Path("/Users/thibh/Documents/test.txt")
>>> print(s.dirname().dirname())
/Users/thibh
>>> print(s.basename)
test
>>> print(s.ext)
.txt

Vous devez réaliser cet exercice sans utiliser le module os !

class Path():
	pass
	
s = Path("/Users/thibh/Documents/test.txt")
print(s.dirname().dirname())
print(s.basename)
print(s.ext)
Un instant...

Test de la propriété ext

La propriété ext doit retourner l'extension du fichier, dans ce cas-ci la chaîne de caractères "txt".

Test de la propriété basename

La propriété basename doit retourner l'extension du fichier, dans ce cas-ci la chaîne de caractères "test".

Test de la méthode dirname

La méthode dirname doit retourner le dossier parent.