Go 语言编写 CPython 扩展 goPy

BSD
Python Google Go
跨平台
2013-04-08
红薯

疫情之下,程序员如何转型?共享数字化转型加速度,就在微软在线技术峰会>>>

goPy 是一个新的开源项目,实现了用 Go 语言来编写 CPython 扩展。

示例代码:

package simple

import (
	"fmt"
	"gopy"
)

func example(args *py.Tuple) (py.Object, error) {
	fmt.Printf("simple.example: %v\n", args)
	py.None.Incref()
	return py.None, nil
}

func init() {
	methods := []py.Method{
		{"example", example, "example function"},
	}

	_, err := py.InitModule("simple", methods)
	if err != nil {
		panic(err)
	}
}
编译方法:
> gopy pymodule.go
使用方法:
import simple

simple.example("hello", {123: True})
输出结果:
simple.example: [hello map[123:true]]

加载中

评论(2)

雨花
雨花
golang1.8直接生成.so供python调用了
0xAB
0xAB
好东西 goPy

暂无资讯

暂无问答

暂无博客

返回顶部
顶部