Partage
  • Partager sur Facebook
  • Partager sur Twitter

Configurer projet python

    17 janvier 2019 à 7:47:00

    Bonjour,

    Plusieurs questions me viennent à l'esprit:

    1) Je crée un premier fichier .py . Si ce fichier contient la définition d'une nouvelle classe, est ce que je dois isoler ce fichier (un fichier contenant uniquement la définition des classes) ou bien je peux mettre tout mon code dans un seul et unique fichier python ? Quelles sont les bonnes pratiques ?

    2) Dans le cas ou je dois créer un second fichier python qui va par exemple utiliser une des classes qui a été définie dans le premier fichier .py, comment faire pour établir un lien entre ces deux fichiers pythons ?

    3) Si je rassemble plusieurs fichiers python dans un meme dossier, cela revient à créer un package ? Comment faire pour établir le lien entre deux packages différents ? Quel est l'intéret de créer un package ?

    4) Quand je crée une classe, je dois obligatoirement définir le constructeur __init__ avec les attributs de la classe. Quelles sont les autres méthodes que je dois obligatoirement définir lors de la création d'une classe ?

    5) Comment faire pour faire tourner un projet python : quand j'ai un seul fichier, j'execute le fichier en question, mais comment faire quand j'ai pleins de fichiers/dossiers? Y a-til un main à définir ?

    6) Quelle est la différence entre les méthodes spéciales __getattr__ / __setattr__ et __getitem__ / __setitem__ ?

    Merci d'avance

    • Partager sur Facebook
    • Partager sur Twitter
      17 janvier 2019 à 16:28:05

      1) isoler les définitions de classes et fonctions devient au bout d'un temps necéssaires par lui même (surtout pour les classes), sinon tu cherche pendant 3h d'ou viens tel élément, temps que tu devrais plutôt passer à coder plus que chercher 

      2) plusieurs possibilité, import nomfichiersanslepy > from module import objet > from module import * > de la synthaxe la plus facile à tracer mais plus lourde a celle la moins facile à tracer mais plus légère à la rédaction

      3) Généralement le lien entre 2 package se fais via le programme principal tout simplement mais après on peu trouver des solutions en bidouillant le __init__.py des packages

      4) C'est faux. Bien que très peu utile tu peux faire class A: pass. le constructeur n'est même pas obligatoire (si tu n'as pas fini de lire le cours, tu te rendra compte qu'on peut créer des classes qui fonctionnent presque comme des modules en utilisant les méthode de classes et ne déclarant aucun constructeur)

      5) Oui moi j'appelle le 1er programme qui vas appeler les autres main.py mais appel le comme tu veux tant que le non est sans équivoque

      6) les __item__ servent lorsque ta classe a plutôt vocation à décrire un conteneur, elles sont appelées quand on fais truc[indice] alors que __attr__ servent pour toutes les classes quand on fais truc.machin

      En espérant répondre correctement sans trop me planter

      • Partager sur Facebook
      • Partager sur Twitter

      Configurer projet python

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown