Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1373 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  heritage classe, importé module

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

heritage classe, importé module

n°1574311
moon93
Posté le 13-06-2007 à 12:13:01  profilanswer
 

bonjour,  
je débute avec python, et j'aimerai savoir, si c'est obligatoire d'importé une classe (ou le module qu'il la contien, ) avant de l'utilisé (dériver de cette classe)
 
merci

mood
Publicité
Posté le 13-06-2007 à 12:13:01  profilanswer
 

n°1574332
Taz
bisounours-codeur
Posté le 13-06-2007 à 12:47:25  profilanswer
 

oui

n°1574337
masklinn
í dag viðrar vel til loftárása
Posté le 13-06-2007 à 12:50:26  profilanswer
 

Pareil que taz, l'import permet de rendre un objet (module, classe, constante, whatever) visible dans le module/namespace courant, si c'est pas importé Python ne peut pas savoir que ça existe [:spamafote]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1578300
Sve@r
Posté le 23-06-2007 à 08:46:03  profilanswer
 

masklinn a écrit :

Pareil que taz, l'import permet de rendre un objet (module, classe, constante, whatever) visible dans le module/namespace courant, si c'est pas importé Python ne peut pas savoir que ça existe [:spamafote]


 
Mais quel est l'avantage à faire "from sys import *" ou bien "import sys" ? Dans l'un des cas il faudra indiquer "sys." devant chaque objet et pas dans l'autre mais est-ce la seule différence ???


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°1578321
masklinn
í dag viðrar vel til loftárása
Posté le 23-06-2007 à 11:46:24  profilanswer
 

Sve@r a écrit :

Mais quel est l'avantage à faire "from sys import *" ou bien "import sys" ? Dans l'un des cas il faudra indiquer "sys." devant chaque objet et pas dans l'autre mais est-ce la seule différence ???


C'est la seule différence notable oui, le premier pollue le namespace local et peut générer des conflits de nommage, alors qu'il est beaucoup plus difficile de le faire avec le second (il faut avoir un objet "sys" dans son ns local)


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1578401
Sve@r
Posté le 23-06-2007 à 19:43:53  profilanswer
 

masklinn a écrit :

C'est la seule différence notable oui, le premier pollue le namespace local et peut générer des conflits de nommage, alors qu'il est beaucoup plus difficile de le faire avec le second (il faut avoir un objet "sys" dans son ns local)


 
Je comprends le dilemne mais je débute donc j'ai pas encore les automatismes. Doit-on, pour être propre, toujours éviter les conflits en spécifiant systématiquement class.item ?
J'ai voulu une fois écrire un script shell avec toute la rigueur voulue en isolant, pour éviter le même genre de conflit, les noms des variables par des accolades style "${nom}" au lieu de "$nom". Le résultat est que j'avais un script shell super-rigoureux mais absolument immonde à relire. Ne risque-t-on pas d'avoir le même problème en Python ?
 
Je fais un peu de PyQT et je me sens plus à l'aise à écrire "widget=QWidget(...)" plutôt que "widget=qt.QWidget(...)"...

Message cité 1 fois
Message édité par Sve@r le 23-06-2007 à 19:44:26

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°1578408
masklinn
í dag viðrar vel til loftárása
Posté le 23-06-2007 à 20:24:54  profilanswer
 

Sve@r a écrit :

Je comprends le dilemne mais je débute donc j'ai pas encore les automatismes. Doit-on, pour être propre, toujours éviter les conflits en spécifiant systématiquement class.item ?
J'ai voulu une fois écrire un script shell avec toute la rigueur voulue en isolant, pour éviter le même genre de conflit, les noms des variables par des accolades style "${nom}" au lieu de "$nom". Le résultat est que j'avais un script shell super-rigoureux mais absolument immonde à relire. Ne risque-t-on pas d'avoir le même problème en Python ?
 
Je fais un peu de PyQT et je me sens plus à l'aise à écrire "widget=QWidget(...)" plutôt que "widget=qt.QWidget(...)"...


Ya pas de règle universelle, tout ce que je peux te dire c'est "ça dépend".
 
Après, classiquement, il est quand même recommandé de ne pas utiliser "from foo import *", on recommande habituellement d'utiliser "import foo" (qui crée un namespace) ou "from foo import bar, baz, buzz" (qui spécifie clairement et explicitement quels objets on importe)


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Python

  heritage classe, importé module

 

Sujets relatifs
module LDAP sous unix[C++]petite question sur l'opérateur de conversion de classe
Ecrire une classe dans un fichier?[Résolu] Créer macro importé un .csv dans excel
Probleme avec un module VBAMenu + classe + xml
code source des classe de la bibliothèque MFC C++Utilisation d'instance de classe.
Module upload (fichiers divers)[JS orienté objet] IE m'annonce que ma classe n'est pas défini
Plus de sujets relatifs à : heritage classe, importé module


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR