我有一些lua代码的样本。例如:
for i=1,4 do
print(i)
end我需要使用Python3.4上的卢帕库来执行它。
为此,我编写了以下代码:
import lupa
lua = lupa.LuaRuntime(unpack_returned_tuples=True)
lua.eval(open('test.lua').read())其中test.lua是我的示例lua文件。
但是,如果我试图执行这段代码,就会得到以下结果:
Traceback (most recent call last):
File "/Job/HW-2/testing/test1.py", line 3, in <module>
lua.eval(open('test.lua').read())
File "lupa/_lupa.pyx", line 251, in lupa._lupa.LuaRuntime.eval (lupa/_lupa.c:4579)
File "lupa/_lupa.pyx", line 1250, in lupa._lupa.run_lua (lupa/_lupa.c:18295)
lupa._lupa.LuaSyntaxError: error loading code: [string "<python>"]:1: unexpected symbol near 'for'似乎,这是一个非常简单的问题,但我不知道如何解决它。那么,如何使用Lupa在Python 3上执行Lua文件呢?
发布于 2016-02-18 21:28:30
eval方法需要返回值的Lua表达式。为了执行Lua语句,请调用execute:
>>> lua.execute("""for i=1,4 do
... print(i)
... end""")
1
2
3
4https://stackoverflow.com/questions/35492523
复制相似问题