[python][lua]在python里调用Lua

来源:互联网 发布:a标签触发js函数 编辑:程序博客网 时间:2024/05/22 05:03

https://stackoverflow.com/questions/30841738/run-lua-script-from-python

You can use a subprocess to run your Lua script and provide the function with it’s arguments.

import subprocessresult = subprocess.check_output(['lua', '-l', 'demo', '-e', 'test("a", "b")'])print(result)result = subprocess.check_output(['lua', '-l', 'demo', '-e', 'test2("a")'])print(result)
the -l requires the given library (your script)the -e is the code that should be executed on start (your function)

The value of result will be the value of STDOUT, so just write your return value to it and you can simply read it in your Python script. The demo Lua script I used for the example simply prints the arguments:

function test (a, b)    print(a .. ', ' .. b)endfunction test2(a)    print(a)end

In this example both files have to be in the same folder and the lua executable must be on your PATH.

===================================

我失败了,然后才注意到最后一句话.
最后我把python里的改成了

import subprocessresult = subprocess.check_output(['th', '-l', 'demo', '-e', 'test("a", "b")'])print(result)result = subprocess.check_output(['th', '-l', 'demo', '-e', 'test2("a")'])print(result)

因为我安装的是torch.