Parece que cancelaron en Python 3 toda la manera fácil de cargar rápidamente un script eliminando execfile()
¿Hay una alternativa obvia que me falta?
%run script_namefunciona con todas las versiones de Python.
impes importlib (que debe importarse): importlib.reload(mod_name)importa y ejecuta mod_name.
runfile()ya que necesitaba ejecutar un script de Python que se ejecute en su propio espacio de nombres (en lugar de ejecutarse en el espacio de nombres de llamada ). Mi solicitud: agregar el directorio del script llamado a la ruta del sistema ( sys.path) mediante el __file__atributo: si usamos execfile()o su equivalente en Python 3 ( exec(open('file.py').read())) del script incluido se ejecuta en el espacio de nombres llamando y por lo tanto __file__resuelve al llamar a nombre de archivo.
reloadestá de vuelta, comoimp.reload, desde 3.2.