【问题标题】:Execute .py script from sikuli passing arguments从 sikuli 传递参数执行 .py 脚本
【发布时间】:2016-01-21 09:57:20
【问题描述】:

我有一个要在 Sikuli 中执行的代码,我想调用一个外部 Python 脚本来分析生成文件中的数据。

我尝试过直接导入 .py 文件,subprocess.call(), subprocess.Popen()execfile()

我有两个主要问题:

  • 首先,我需要将一些参数传递给 python 脚本(特别是要分析的文件的路径 [str] 和测试编号 [int])。
  • 其次,我的 .py 脚本使用了 Jython 无法执行的库,例如 ma​​tplotlib.pyplotnumpy

在尝试了我能想到的所有可能性之后,我已经迷失了。什么应该最有效?提前谢谢你。

【问题讨论】:

    标签: python numpy jython sikuli


    【解决方案1】:

    您可以像这样简单地将参数传递给 Sikuli 脚本:

    C:\Sikulix\runScript.cmd -r Tests\Test.sikuli --arg argVal
    

    那么你可以像这样访问它:

    print sys.argv[1]
    

    其中1 是参数在命令行中出现的顺序。

    你可以像这样使用execfile

    execfile("C:\SikuliX\Tests\Test.py")
    

    然而,这个问题是 execfile 运行 Python 文件 by loading it 而不是作为脚本。只能传入变量绑定,不能传入参数。

    如果您想在 Python 中运行程序,请使用 subprocess.call。例如

    subprocess.call(['./abc.py', arg1, arg2])
    

    【讨论】:

      猜你喜欢
      • 2011-02-08
      • 2016-09-28
      • 2021-02-15
      • 2011-05-20
      • 2019-03-19
      • 2021-08-26
      • 2018-10-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多