如何从具有其他环境的另一个脚本中运行具有其环境的python脚本?

时间:2019-04-27 16:18:45

标签: python

我有两个脚本:import json filepath = 'img.txt' asset_path = 'static/img/' images = [] with open(filepath) as file: for line in file: split = line.split("#") image = { "imgurl": asset_path+split[0], "description": split[1].strip('\n') } images.append(image) with open('data.json', 'w') as outfile: json.dump( { "images" : images }, outfile) script1.py

script1有其环境(例如python 2),而script2有其自身的环境(例如python 3)。

如何使脚本1调用脚本2及其相应的环境?

谢谢

1 个答案:

答案 0 :(得分:0)

我现在可以想到的一种解决方法是os.system用于执行其他文件。

示例:

script1.py

#!/usr/bin/env python3
import os

os.system("script2.py")

script2.py

#!/usr/bin/env python2

print "script 2 running..."

print "script 2 running..."是一个很好的例子,因为python2.X使用print不带括号,而python3.X使用print()带有括号

请务必注意两个脚本上的shebang(#!/usr/bin/env python3#!/usr/bin/env python2),它们指向两个脚本的正确的企业家/环境。

os.system也可以与参数一起使用,例如os.system("script2.py data.txt"),如果您要运行带有参数的另一个脚本,则很棒。