I am using Python.Net embedded inside an application.  The application allows me to select and run a python file (which then allows me to use Python to access that application's C# SDK).

string code;
using (var streamReader = new StreamReader(scriptFile, Encoding.UTF8))
    code = streamReader.ReadToEnd();

using (Py.GIL())

This works, except when the code imports a python module I have to quit and restart the application in order for the import to reflect any code changes (which is very slow for debugging).

How can I reload or reset the PythonEngine before running the code?