我正在尝试制作一个程序“main”,调用其他程序,完成后返回main。我希望能够重复调用相同的程序。问题是如果我第二次使用“导入”时第一次使用“导入”调用程序。
主:
main = input("What option would you like?")
if main == 1:
import proga
elif main == 2:
import progb
else:
import probc
more = input("Would you like more?")
if more == 'y':
import main
else:
print "Have a nice day!"
PROGA: 计算一下 打印这个
PROGB: 计算一下 打印
等
当我对“更多”问题回答'y'时,它将回复“main = input”部分,但是如果我选择了我已经选择的选项,它将不会播放,因为它已经被导入了。还有其他方法可以再次播放这些节目吗?我应该使用execfile吗?使用os.system?谢谢!
答案 0 :(得分:0)
尝试使用execfile()
获取Python 2及以下内容:
execfile("proga.py", {})
对于更高版本(Python 3+),请尝试以下操作:
exec(compile(open(filename, "rb").read(), "proga.py", 'exec'))
答案 1 :(得分:0)
反复调用程序效率不高。同样,对于类似你的例子,调用另一个程序是完全没必要的。执行此操作的最佳方法是将proga和progb编写为函数,然后将它们导入主程序。之后,调用函数。