如何从 Python 调用 Go 函数

纳仁平

当我调用 python 程序时,我试图从 python 调用 go lang 函数我看到以下错误。我指的是Go to pythn链接。

错误

蟒蛇程序

    from ctypes import *
    def call_go_function():

        lib = cdll.LoadLibrary("./awesome.so")
        lib.Add.argtypes = [c_longlong, c_longlong]
        print( lib.Add(12,99)) 

    call_go_function()   

围棋程序

package main
import "C"
import (

"sync"
 )
 var count int
 var mtx sync.Mutex
 //export Add
 func Add(a, b int) int { return a + b }
 func main() {}
弗洛里安·兹沃克

从 Python 路径看,这是一个 32 位 Python 版本。您不能混合使用 32 位和 64 位用户空间代码。

所以我想你需要:

  • 将 Go 代码重建为 32 位 DLL(参见 GOARCH=386)或
  • 安装并运行 64 位 Python 版本。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章