如何从Python调用Go函数

2024-09-28 22:11:17 发布

您现在位置:Python中文网/ 问答频道 /正文

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

error

Python程序

    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()   

Go程序

^{pr2}$

Tags: to函数from程序addgolang链接
2条回答

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

所以我想你需要:

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

也许是环境问题。试着运行一个简单的程序

from ctypes import *
lib = cdll.LoadLibrary("./func.so")
r=lib.fun(10,20)
print(r)
^{pr2}$
>go build -o func.so -buildmode=c-shared func.go
>python test.py
30

相关问题 更多 >