使用Python或其他嵌入式脚本语言部署应用程序

2024-05-22 02:52:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在Python中使用Python作为<强>嵌入式脚本语言<强> >在<强>中编写的爱好项目中。我不想依赖于单独安装的Python发行版。Python文档似乎很清楚一般用法,但我找不到一个明确的答案。在

在我的应用程序中部署Python解释器+标准库是否可行?其他一些语言,比如Lua、Javascript(Spidermonkey)、Ruby等,是否更适合这种用途?在

以下是我衡量不同语言的标准:

  • 对外部安装的软件包没有/很少依赖
  • 具有良好功能集的标准库
  • 漂亮的语言:)
  • 不会产生巨大的安装包

编辑:

我想问题应该是: 如何在程序的安装程序中部署自己的python库+标准库,这样平台是否已经安装了python就不重要了?在

编辑2:

再澄清一次。我不需要关于链接C和Python代码的细节的信息。在


Tags: 项目答案文档语言应用程序编辑用法标准
3条回答

嵌入过程有完整的文档:Embedding Python in Another Application。 文档建议在几个层次上进行嵌入,选择最适合您的需求。在

A simple demo of embedding Python can be found in the directory Demo/embed/ of the source distribution.

The demo is here,应该能够从发行版生成。在

  • Very High Level Embedding
  • Beyond Very High Level Embedding: An overview
  • Pure Embedding
  • Extending Embedded Python
  • Embedding Python in C++

从标准库中,您可以选择不包含太多依赖项的组件。在

用吉梅尔的话说,没有什么能阻止你发货python.dll,并设置正确的PYTHONPATH,以便使用您自己安装的python标准库。它们只是库和文件,您的安装过程就可以这样处理它们。在

将应用程序链接到python库(pythonXX.lib并将以下内容添加到main()函数中。在

Py_NoSiteFlag = 1;  // Disable importing site.py
Py_Initialize();    // Create a python interpreter

将所需的python标准库位放入一个zip文件(称为pythonXX.zip)把这个和pythonXX.dll在您分发的可执行文件旁边。查看zipfile模块中的PyZipFile。在

相关问题 更多 >