运行 python 没有安装库的脚本
Running python script without installed libraries
我有使用 scipy
和 numpy
函数的 Python 脚本,我需要在安装了 Python 但没有模块的计算机上 运行 它scipy
和 numpy
。我该怎么做? .pyc
是答案还是我应该做一些更复杂的事情?
备注:
- 我不想使用
py2exe
。我知道它,但它不适合问题。
- 我读过,这些问题 (What is the difference between .py and .pyc files?, Python pyc files (main file not compiled?)) 与这个问题有明显的联系,但由于我是物理学家,而不是程序员,所以我完全迷失了。
不可能。
一个pyc
文件只不过是一个编译成字节码的python文件。它不包含此文件导入的任何模块!
此外,numpy
模块是用 C 语言编写的扩展(还有一些 Python)。其中很大一部分是在运行时加载到 Python 中的共享库。你需要这些来让 numpy 工作!
Python先"compiles"一个程序变成字节码,然后通过解释器抛出这个字节码。
因此,如果您的代码都是 Python 代码,您将能够一次性生成字节码,然后让 Python 运行时使用它。事实上,我见过这样的项目,其中开发人员只是查看了字节码规范,并实现了一个字节码解析引擎。它非常轻巧,因此可用于例如。 "Python on a chip"等
问题来自未完全用 Python 编写的外部库(例如 numpy、scipy)。
Python 提供了一个 C-API,允许您创建(使用 C/C++ 代码)在它看来是 Python 对象的对象。这对于加快速度、与硬件交互、利用 C/C++ 库非常有用。
看看Nuitka。如果您能够编译您的代码(不一定是一项可能或简单的任务),您就会得到您想要的。
我有使用 scipy
和 numpy
函数的 Python 脚本,我需要在安装了 Python 但没有模块的计算机上 运行 它scipy
和 numpy
。我该怎么做? .pyc
是答案还是我应该做一些更复杂的事情?
备注:
- 我不想使用
py2exe
。我知道它,但它不适合问题。 - 我读过,这些问题 (What is the difference between .py and .pyc files?, Python pyc files (main file not compiled?)) 与这个问题有明显的联系,但由于我是物理学家,而不是程序员,所以我完全迷失了。
不可能。
一个pyc
文件只不过是一个编译成字节码的python文件。它不包含此文件导入的任何模块!
此外,numpy
模块是用 C 语言编写的扩展(还有一些 Python)。其中很大一部分是在运行时加载到 Python 中的共享库。你需要这些来让 numpy 工作!
Python先"compiles"一个程序变成字节码,然后通过解释器抛出这个字节码。
因此,如果您的代码都是 Python 代码,您将能够一次性生成字节码,然后让 Python 运行时使用它。事实上,我见过这样的项目,其中开发人员只是查看了字节码规范,并实现了一个字节码解析引擎。它非常轻巧,因此可用于例如。 "Python on a chip"等
问题来自未完全用 Python 编写的外部库(例如 numpy、scipy)。
Python 提供了一个 C-API,允许您创建(使用 C/C++ 代码)在它看来是 Python 对象的对象。这对于加快速度、与硬件交互、利用 C/C++ 库非常有用。
看看Nuitka。如果您能够编译您的代码(不一定是一项可能或简单的任务),您就会得到您想要的。