golang调用 python 报错

btsome · 2021-09-26 18:39:28 · 1035 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2021-09-26 18:39:28 的主题,其中的信息可能已经有所发展或是发生改变。

最近在项目中想用 golang调用 python 在执行的时候一直报这个错 SyntaxError: invalid syntax (uuid.py, line 138) demp.py内容

y = 6

import time
import uuid

def testF():
    global y
    y = y-2
    print(uuid.uuid4())
    return 2*y*time.time()*uuid.uuid4()

if __name__ == "__main__":
    testF()

main.go 文件

package main

import (
    "fmt"

    "github.com/DataDog/go-python3"
)

func main() {

    python3.Py_Initialize()

    defer python3.Py_Finalize()

    if !python3.Py_IsInitialized() {
        panic("Error initializing the python interpreter")
    }

    var err error

    err = python3.PySys_SetPath("/opt/gop/")
    if err != nil {
        panic("ERROR: Path set error.")
    }

    dir := "/usr/local/lib/python3.7/dist-packages"
    python3.PyRun_SimpleString("import sys\nsys.path.append(\"" + dir + "\")")

    pModule := python3.PyImport_ImportModule("test.demo.demo1")
    if pModule == nil {
        panic("ERROR: Module not found.")
    }
}

执行报错内容

Traceback (most recent call last):
  File "/opt/gopwn/test/demo/demo1.py", line 4, in <module>
    import uuid
SyntaxError: invalid syntax (uuid.py, line 138)
panic: ERROR: Module not found.

goroutine 1 [running]:

不使用 uuid 插件就好,什么原因呢?


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1035 次点击  
加入收藏 微博
1 回复  |  直到 2021-09-27 11:41:50
yupor5
yupor5 · #1 · 3年之前

uuid.py, line 138
Module not found
模块没找到

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传