1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
import sys
import types
from importlib.machinery import SourceFileLoader
def processFromFile(filename:str, args=None):
old_sys_argv = None
if args is not None:
old_sys_argv = sys.argv[:]
sys.argv = [filename]+args
loader = SourceFileLoader("pycfg", filename)
mod = types.ModuleType(loader.name)
loader.exec_module(mod)
process = mod.process
if old_sys_argv is not None:
sys.argv = old_sys_argv
return process
|