无法执行lua代码,从文件中读取

时间:2016-02-18 21:12:58

标签: python python-3.x lua embedding lupa

我有一些lua代码示例。例如:

volatile

我需要在Python 3.4上使用Lupa库执行它。

为此,我编写了以下代码:

for i=1,4 do
   print(i)
end

其中import lupa lua = lupa.LuaRuntime(unpack_returned_tuples=True) lua.eval(open('test.lua').read()) 是我的示例lua文件。

但如果我尝试执行此代码,我会得到以下内容:

test.lua

看来,这是一个非常简单的问题,但我不知道如何解决它。那么,我如何使用Lupa在Python 3上执行Lua文件?

1 个答案:

答案 0 :(得分:3)

eval方法需要一个返回值的Lua表达式。要执行Lua语句,请改为调用execute

>>> lua.execute("""for i=1,4 do
...    print(i)
... end""") 
1
2
3
4