Il semble qu'ils aient annulé dans Python 3 tout le moyen facile de charger rapidement un script en supprimant execfile()
Y a-t-il une alternative évidente qui me manque?
%run script_namefonctionne avec toutes les versions de Python.
impest importlib (qui doit être importé): importlib.reload(mod_name)importe et exécute mod_name.
runfile()car j'avais besoin d'exécuter un script Python qui s'exécute dans son propre espace de noms (par opposition à l'exécution sur l' espace de noms appelant ). Mon application: ajoutez le répertoire du script appelé au chemin système ( sys.path) en utilisant l' __file__attribut: si nous utilisons execfile()ou son équivalent en Python 3 ( exec(open('file.py').read())) le script inclus est exécuté dans l'espace de noms appelant et se __file__résout ainsi en nom de fichier appelant .
reloadest de retour, puisqueimp.reload, depuis 3.2.