【问题标题】:How do scan a script for return values from a upper script in python?如何从 python 中的上层脚本扫描脚本以获取返回值?
【发布时间】:2013-06-26 14:55:45
【问题描述】:
import os
import pdb

os.system("ToBuildOrNot.py MSS_sims")

for output in os.system:
     if ToBuildOrNot is True:
         print "The MSS_sims Needs To rebuilt"

     elif ToBuildOrNot is False:
         print "The MSS_sism does NOT Need to be Rebuilt"

     else:
         print "error"

【问题讨论】:

    标签: python return


    【解决方案1】:

    不要使用 system 从 Python 脚本调用 Python 脚本,这会产生一个完整的其他解释器。只需导入它。像这样:

    import ToBuildOrNot
    needsBuild = ToBuildOrNot.run() # or whatever you call your top-level function
    

    由于 ToBuildOrNot.py 现在是一个脚本,请确保“main”函数受到保护,因此它不会在导入时自动执行。大多数人在 Python 中都是这样做的:What does if __name__ == "__main__": do?

    【讨论】:

    • 我仍然无法运行实际程序“ToBuildOrNot.py MSS_sims”它仍然只运行 ToBuildOrNot
    • 你需要定义一个类似def run(filename)的函数(在我的例子中),然后用“MSS_sims”调用它来传入文件名。
    猜你喜欢
    • 2015-10-06
    • 2021-05-18
    • 1970-01-01
    • 1970-01-01
    • 2016-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多