示例#1
0
def execfile_as_main(path):
    import __builtin__
    oldmain = sys.modules["__main__"]
    main = sys.__class__("__main__")
    main.__file__ = path
    main.__builtins__ = __builtin__
    main.__package__ = None
    try:
        sys.modules["__main__"] = main
        return execfile(path, main.__dict__)
    finally:
        sys.modules["__main__"] = oldmain
示例#2
0
def execfile_as_main(path):
    import builtins as __builtin__
    oldmain = sys.modules["__main__"]
    main = sys.__class__("__main__")
    main.__file__ = path
    main.__builtins__ = __builtin__
    main.__package__ = None
    try:
        sys.modules["__main__"] = main
        return exec(compile(open(path).read(), path, 'exec'), main.__dict__)
    finally:
        sys.modules["__main__"] = oldmain
示例#3
0
def execfile_as_main(path):
    import __builtin__
    oldmain = sys.modules["__main__"]
    main = sys.__class__("__main__")
    main.__file__ = path
    main.__builtins__ = __builtin__
    main.__package__ = None
    try:
        sys.modules["__main__"] = main
        return execfile(path, main.__dict__)
    finally:
        sys.modules["__main__"] = oldmain
示例#4
0
def _get_odflint_module():
    exe = py.path.local.sysfind("odflint")
    assert exe is not None, "odflint not found"

    argv = sys.argv[:]
    stderr = sys.stderr
    odflint = sys.__class__("odflint")

    try:
        sys.stderr = StringIO()
        del sys.argv[1:]
        try:
            execfile(exe.strpath, odflint.__dict__)
        except SystemExit:
            pass
        return odflint
    finally:
        sys.argv[:] = argv
        sys.stderr = stderr