gpt4 book ai didi

python - 使用 `gopy` ,如何正确地将 []string 从 Python 传递给 Go?

转载 作者:数据小太阳 更新时间:2023-10-29 03:37:35 26 4
gpt4 key购买 nike

我的 Go 代码是:

func Test(websites []string) {
fmt.Print("test")
}

我使用 gopy build 生成 httpget.so 文件

然后我尝试在我的 Python 代码中加载并使用此模块 httpget.so:

import httpget
print dir(httpget)

httpget.Test(["aaaa"])

但是调用该函数会导致 Go 端出现 panic :

panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x1 pc=0x103998688]

goroutine 17 [running, locked to thread]:
main.cgo_func_httpget_Test(0x1)
/private/var/folders/yg/tx1wr1c5233fd299lpqnvjy40000gn/T/gopy-066392802/httpget.go:173 +0x18

goroutine 18 [syscall, locked to thread]:
runtime.goexit()
/usr/local/Cellar/go/1.5.1/libexec/src/runtime/asm_amd64.s:1696 +0x1

我该如何解决这个问题?

最佳答案

好的,我找到路了!! 23333

语言

var (
WebSites = [1]string{"aaa"}
)

在 python 中

import httpget
s = httpget.GetWebSites()
s[0] = "http://www.baidu.com"
httpget.Test(s)

关于python - 使用 `gopy` ,如何正确地将 []string 从 Python 传递给 Go?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33759003/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com