Listing 3. Making a Copy of the Environment // Get a reference to the main module. PyObject* main_module = PyImport_AddModule("__main__"); // Get the main module's dictionary // and make a copy of it. PyObject* main_dict = PyModule_GetDict(main_module); PyObject* main_dict_copy = PyDict_Copy(main_dict); // Execute two different files of // Python code in separate environments FILE* file_1 = fopen("file1.py", "r"); PyRun_File(file_1, "file1.py", Py_file_input, main_dict, main_dict); FILE* file_2 = fopen("file2.py", "r"); PyRun_File(file_2, "file2.py", Py_file_input, main_dict_copy, main_dict_copy);