lupa將luajit整合到了python模組中,可以在python中執行lua**。 比較有意思,也許以後用的著,記錄一下。
基本用法:
>>>
import
lupa
>>>
from
lupa
import
luaruntime
>>>
lua
=luaruntime()
>>>
lua.eval(
'1+1')
2>>>
lua_func
=lua.eval(
'function(f, n) return f(n) end')
>>>
defpy_add1(n):
returnn+
1>>>
lua_func(py_add1, 2)
3>>>
lua.eval(
'python.eval(" 2 ** 2 ")')
==4true
>>>
lua.eval(
'python.builtins.str(4)')
=='4'
true
lua中的python物件
>>>
lua_func
=lua.eval(
'function(obj) return obj["get"] end')
>>>d =
>>>
value
=lua_func(d)
>>>
value =='
got'
true
>>>
dict_get
=lua_func( lupa.as_attrgetter(d) )
>>>
dict_get(
'get')
=='got'
true
>>>
lua_func
=lua.eval(
...
'function(obj) return python.as_attrgetter(obj)["get"] end')
>>>
dict_get
=lua_func(d)
>>>
dict_get(
'get')
=='got'
true
lua中的迭代迴圈:
>>>
lua_copy
=lua.eval(
'''... function(l)
... local t, i = {}, 1
... for item in python.iter(l) do
... t[i] = item
... i = i + 1
... end
... return t
... end
...
''')
>>>
table
=lua_copy([1,
2,3,
4])>>>
len(table)
4>>>
table[
1]
#lua indexing1
lua中的table:
>>>
table
=lua.eval(''
)>>>
table[1]
10>>>
table[4]
40>>>
list(table)[1
, 2, 3
, 4]>>>
list(table.values())[10
, 20
, 30
, 40
]>>>
len(table)
4>>>
=lua.eval(''
)>>>1]
>>>
=lua.eval(''
)>>>20]
-20>>>3]
-3>>>-20
, -3]
>>>3,
-3), (
20, -20
)]>>>-3
] =3#
-3 used as key, not index!
>>>-3
]3>>>-3
, 3, 20
]>>>-3
, 3), (3,
-3), (
20, -20
)]
(等等……)
參考:1.
2.
出處:
C 中反射呼叫
c 中反身呼叫 object ojb1 obj1 is cswitwebcontrol.controls.cswitlabel obj1 is cswitwebcontrol.controls.cswitbutton obj1 is cswitwebcontrol.controls.cswitima...
python中呼叫 庫
2013 04 23 15 34 52 分類 python核心程式設計 標籤 python makefile 舉報 字型大小訂閱 1 原始檔 getstring.c getstring.h reverse.c reverse.h getstring.c include char getstring ...
PHP中呼叫介面
在這裡operate.php相當於乙個介面,其中get user list 是乙個api 獲取使用者列表 講求返回的資料型別為json格式。你只需要在你php 中執行這條鏈結他就會返回。get方式的直接使用 post方式得用下面的 需要開啟php curl支援 curl setopt ch,curl...