首页 > 解决方案 > 是否可以将 MicroPython 嵌入到 CPython 应用程序中?

问题描述

内存布局有很大不同吗?CPython 和 MicroPython 之间很难共享对象吗?

背景是我想像 LUA 一样使用 Python。要使用完整的 CPythoneval()或者exec()太危险,我希望我可以拥有一个简化的 Python 版本,它是沙盒的,并且无法访问我的操作系统的系统调用。

标签: micropython

解决方案


CPython 和 MicroPython(以及与此相关的许多其他实现)不共享任何实现细节,因此将对象从一个传递到另一个需要转换 C 中的类型。而且我认为沙盒方面与哪个 Python 版本相当正交你使用的是,micropython 是用 C 语言编写的,就像 CPython 一样,所以为了沙箱化并避免访问任何功能,你需要外部组件或其他措施来支持它。例如,MicroPython 也有 exec/eval,如果您不希望将它们排除在编译成可执行文件之外,例如 CPython。


推荐阅读