Question

__author__="Sergio.Tapia"
__date__ ="$18-10-2010 12:03:29 PM$"

if __name__ == "__main__":
    print("Hello")
    print(__author__)

Où il se __main__ et __name__?

Merci pour l'aide

Était-ce utile?

La solution

La variable __name__ est mis à disposition par le moteur d'exécution. Il est le nom du module courant, le nom sous lequel il a été importé. "__main__" est une chaîne. Ce n'est pas spécial, il est juste une chaîne. Il arrive aussi d'être le nom du script principal lors de son exécution.

Le mécanisme de if __name__ == "__main__": est la façon courante de faire quelque chose quand un fichier .py est exécuté directement, mais pas quand il est importé en tant que module.

Autres conseils

modules Python peuvent aussi être exécutés sous forme de scripts autonomes. En tant que tel, le code dans le bloc if __name__ == "__main__": ne fonctionnera que si le module est exécuté comme le fichier « principal ».

Exemple :

#foo.py
def msg():
    print("bar")

if __name__ == "__main__":
    msg()

L'exécution de ce module, sortie

$ python foo.py
bar

où que l'importation il ne sera rien de sortie.

>>> import foo
>>> foo.msg()
bar

Référence

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top