登录
首页 >  Golang >  Go问答

动态执行Go代码的方法

来源:stackoverflow

时间:2024-02-25 15:54:23 252浏览 收藏

今日不肯埋头,明日何以抬头!每日一句努力自己的话哈哈~哈喽,今天我将给大家带来一篇《动态执行Go代码的方法》,主要内容是讲解等等,感兴趣的朋友可以收藏或者有更好的建议在评论提出,我都会认真看的!大家一起进步,一起学习!

问题内容

我需要动态执行代码,例如运行 fmt.Print("hello") (字符串格式),也许我正在寻找的是一个 go 虚拟机?

通过go-演示,我们可以输入代码并执行它,后面是如何工作的?

最糟糕的解决方案是将字符串代码写入文件并使用 exec.Command("go", "run","file") 调用它。


解决方案


1。演示

我想您已经回答了大部分问题。

很快就从演示中找到了compileAndRun的来源。

是的,它使用: https://github.com/golang/playground/blob/509e10fc018f6da63e433d45afbf5c21af9480a2/sandbox.go#L361

    cmd := exec.Command("go", "build", "-o", exe, buildPkgArg)

2。 jupyter 内核、gore、lgo、gophernotes 和 gomacro

尽管这并不意味着必须始终如此。

我自己计划在业余时间研究:

  • 地鼠笔记
  • lgo
  • gomacro 本身就是用于 gophernotes 的包

总体而言:这并不像其他语言中的 eval 那么容易,但没有什么可以停止实现它。

祝你好运!

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《动态执行Go代码的方法》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>