Aller au contenu principal
🔒 Mode aperçu. Les quinze premières leçons Foundations sont gratuites ; celle-ci est Pro. Démarrez un trial de 7 jours pour débloquer l'éditeur, les conseils AI et le reste du programme. Carte requise, annulez à tout moment dans Dashboard.Démarrer le trial de 7 jours →
← CoursSenior Deep-DivesModule 10 · Production idioms (modern Python)pathlib.Path — the modern alternative to os.path string-pushingpredict142 / 161
+150 XP
Tâche
📝 **Tâche :** Prédisez la sortie de 8 lignes. Un répertoire temporaire est créé ; un fichier est écrit + lu ; le chemin est décomposé par .name / .stem / .suffix ; .with_suffix produit un nom dérivé ; .glob trouve deux fichiers .py ; .exists distingue un fichier réel d'un fichier inexistant. 📋 Implémentez la fonction ci-dessus. Les tests s'exécutent automatiquement. 💡 **Indice :** Relisez la théorie si vous êtes bloqué.
Prédis la sortie

Lis le code attentivement

from pathlib import Path
import tempfile


with tempfile.TemporaryDirectory() as tmpdir:
    base = Path(tmpdir)

    f = base / "data.txt"
    f.write_text("hello\nworld\n")

    # 1. round-trip read
    print(f.read_text().strip())

    # 2. path decomposition
    print(f.name)
    print(f.stem)
    print(f.suffix)

    # 3. derived path via .with_suffix
    new = f.with_suffix(".bak")
    print(new.name)

    # 4. glob
    (base / "a.py").write_text("")
    (base / "b.py").write_text("")
    print(sorted(p.name for p in base.glob("*.py")))

    # 5. exists predicate
    print(f.exists(), (base / "ghost.txt").exists())

Que va afficher le programme ? Écris ici :

💬 Discussion

Soyez le premier à poser une question ou partager une astuce.
Connectez-vous pour rejoindre la discussion. La lecture est gratuite.
Chargement de la discussion…