Maison  >  Article  >  développement back-end  >  Go 语言编写 CPython 扩展 goPy

Go 语言编写 CPython 扩展 goPy

高洛峰
高洛峰original
2016-10-18 11:40:281800parcourir

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]]


github开源项目地址:https://github.com/qur/gopy


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn