重写内置函数并将其继承到外部python脚本调用的方法即os.system“ Script2.py”

问题描述

有没有办法做到这一点?我想通过os.system()或子进程在Script1.py中调用Script2.py,但是Script2.py包含了raw_input内置函数,我想用在Script1.py中编写的自定义raw_input函数覆盖它。

如果我导入Script2.py并改为调用其类,则可以很明显地做到这一点,但是我想通过os.system对其进行调用

解决方法

将此包装添加到script2.py的结尾

import sys 
if __name__ == '__main__':
    globals()[sys.argv[1]]()

然后直接调用它:

func = os.popen('python.exe script2.py raw_input').read()

func是结果。