Comment appeler la fonction Go depuis Python
Naren P
J'essaie d'appeler la fonction go lang à partir de python lorsque j'appelle mon programme python, je vois l'erreur suivante. Je fais référence au lien Aller à pythn .
Programme 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()
Aller au programme
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() {}
Florian Zwoch
D'après le chemin Python, il semble qu'il s'agisse d'une version Python 32 bits. Vous ne pouvez pas mélanger du code d'espace utilisateur 32 bits et 64 bits.
Donc je suppose que vous devez soit :
- Reconstruisez votre code Go en tant que DLL 32 bits (voir GOARCH=386) ou
- Installez et exécutez une version Python 64 bits.