从golang调用python
下面是使用golang应用程序中的python代码的示例。我在尝试go build时安装了python3.8开发版 我明白了 “未定义对Py_Finalize的引用”知道为什么吗?我已经将export PKG_CONFIG_PATH=设置为python3.pc文件所在的位置从golang调用python,python,go,gcc,cython,Python,Go,Gcc,Cython,下面是使用golang应用程序中的python代码的示例。我在尝试go build时安装了python3.8开发版 我明白了 “未定义对Py_Finalize的引用”知道为什么吗?我已经将export PKG_CONFIG_PATH=设置为python3.pc文件所在的位置 package main // #cgo pkg-config: python3 // #include <Python.h> import "C" import (
package main
// #cgo pkg-config: python3
// #include <Python.h>
import "C"
import (
"unsafe"
)
func main() {
pycodeGo := `
import sys
for path in sys.path:
print(path)
`
defer C.Py_Finalize()
C.Py_Initialize()
pycodeC := C.CString(pycodeGo)
defer C.free(unsafe.Pointer(pycodeC))
C.PyRun_SimpleString(pycodeC)
}
主程序包
//#cgo pkg配置:python3
//#包括
输入“C”
进口(
“不安全”
)
func main(){
pycodeGo:=`
导入系统
对于sys.path中的路径:
打印(路径)
`
推迟C.Py_定稿()
C.Py_初始化()
pycodeC:=C.CString(pycodeGo)
延迟C.free(不安全的指针(pycodeC))
C.PyRun_SimpleString(pycodeC)
}
你好!您能澄清一下为什么要包含标签gcc
和cython
?这个问题似乎与他们两人都无关。