Je souhaite créer un fichier de script standard importé dans Python au démarrage à l'aide de la variable d'environnement PYTHONSTARTUP. De plus, je veux être en mesure de recharger facilement le même fichier de script après l'avoir modifié dans un éditeur externe, pour tester son comportement après la modification. J'ai créé un fichier ~/.pythonrc.py et le définir comme PYTHONSTARTUP:Utilisation de PYTHONSTARTUP pour tester interactivement un fichier python dans l'interpréteur
import os
import imp
def load_wb():
_cwd = os.getcwd()
os.chdir(os.path.join(os.getenv('HOME'),'Skripte'))
import workbench
imp.reload(workbench)
os.chdir(_cwd)
load_wb()
Ceci est mon très minime fichier de script pour le début:
def dull_function():
print('Not doing much...')
print('Workbench loaded.')
Quand je lance Python 3.1.2, .pythonrc est exécuté avec succès et le workbench.py est importé, mais la fonction dull_function n'apparaît pas dans l'espace de noms global ou dans un espace local. Qu'est-ce que je dois faire différemment?
Avez-vous essayé 'workbench.dull_function'? – rubik
workbench.dull_functuion génère une erreur NameError. Cela n'est pas surprenant, car ni workbench ni dull_function n'apparaissent dans l'espace de noms listé par dir() après les imports. imp.reload (workbench) renvoie un objet module. Existe-t-il un moyen d'intégrer manuellement cet objet dans l'espace de noms global? – neradis