0

我目前在他们要求我制作一个独立的 python 程序来做某事(比如 X)的地方实习。
现在,该程序将由他们的专有软件发送的一些命令运行,这些命令是用他们的专有语言编写的。现在我这么多次说专有的原因是因为他们还没有准备好让我靠近他们的代码。我只是应该根据他们的软件给出的输入制作一个执行 X 的 Python 代码。

那么有没有一种方法可以制作一个 API 并将其包裹在我的代码中,以便让软件控制它?另外我需要使整个东西独立(可能是某种安装程序),这样他们就不必安装 Python 和随附的模块(如 opencv)来运行我的脚本?

我能从中得到的只是“有 dll 文件将调用您的应用程序,我们需要一个可执行文件”

4

1 回答 1

0

任何程序都可以执行任何其他程序(如果它具有适当的权限),因此“python 文件”和“python 可执行文件”之间没有真正的区别(这是因为 python 是一种解释性语言。python 源文件和“最终 python程序”是“相同的”(假设 cpython),与源文件和可执行文件大不相同的 C 程序形成对比)。

如果您在 Windows 上,则存在用户必须安装 python 才能执行 .py 文件的附加问题。有一些方法可以缓解这个问题 - 有一些 Python 库可以将 Python 解释器您的代码“冻结”到单个 .exe 文件中(来自 Bakuriu 的评论,例如freeze)。您可以将 python 解释器与您的代码捆绑在一起。您可以只说您的用户安装 python(如果用户数量很少,这可能是个好方法)。

“API”只是说“这就是你与我的程序通信的方式”的一种奇特方式。这可能是您调用库的方式(例如 python 模块导出的函数),或者这可能是 HTTP API 或传递的命令行参数或通过 TCP 套接字使用的协议。如果不知道你应该实现哪个 API,你就无法完成你的工作。

如果不知道进一步的规范(其他程序给你的输入是什么,它如何调用你的程序?),很难说任何更有帮助的东西。

于 2016-07-05T09:33:50.433 回答