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 subprocess
result = 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)
end
function 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 subprocess
result = 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.