我正在使用几个使用不同版本Python的应用程序:
Nuke - 2.7
3Dequalizer - 2.6
linux - 2.6.6
我遇到了各种各样的问题,试图让他们彼此沟通,所以我想知道是否可以在脚本中更改Python解释器。
E.g。从2.6开始,然后从2.6
中的脚本运行2.7中的Python脚本修改
nuke_install = "/path/to/nuke"
cmd = nukeLauncher + " -t"
os.system(cmd)
-t标志允许在没有GUI的情况下运行nuke。这段代码在Python解释器中运行时有效,但是当我在3dequalizer中通过Python脚本运行时它会给我:
ImportError: No module named site
为了增加另一层次的混乱,我可以在3dequalizer中导入网站。 3dequalizer的sys.path包含与直接从解释器运行时相同的路径,以及3de附带的python库的一些附加内容。
另外PYTHONPATH在3dequalizer中是空的。如果sys.path指向正确的路径,这是否重要?
答案 0 :(得分:0)
我不确定这是真的要走的路;但是如果你真的想这样做,你可以使用os.system
命令,例如:
os.system("python2.7 myscript.py")
将执行程序 python2.7(只要它在您的可执行文件路径中),并在初始脚本中将脚本的名称作为其参数(在返回当前之前)语句
但老实说,我认为你应该以其他方式做到这一点。问候。