Bin*_*Gan 5 python python-3.x keras tensorflow
我有一个使用 keras 和 tensorflow 库的 python 脚本,在每台机器上设置它们都非常耗时。是否可以将我的 python 脚本以及 keras 和 tensorflow 库导出到像 java 项目 --> .jar 这样的文件中,这样我每次搬到新机器时都不需要设置库?
Python 3 包含一个名为的工具zipapp,它允许您从 Python 项目中构建单个档案,捆绑所有(或部分)依赖项。该工具仅与 Python 3 捆绑在一起,但生成的存档将适用于您所针对的任何 Python >= 2.6 版本。
假设您拥有所有源文件src/,包括提到的 Tensor Flow 库:
$ python3 -m zipapp -o yourapp.pyz -m "your.entry.point.module:main_function" src/
Run Code Online (Sandbox Code Playgroud)
该-m标志允许您指定一个模块和其中的一个函数,用 分隔:,将在您运行.pyz文件时执行。关于运行它,这只是一个问题:
$ python ./yourapp.pyz
Run Code Online (Sandbox Code Playgroud)
同样,您将需要 Python >= 2.6 才能使其工作。
如果您的目标是 unix 平台,您还可以添加一个shebang:
$ echo "#! /usr/bin/python" > yourapp2.pyz
$ cat yourapp.pyz >> yourapp2.pyz
$ chmod +x yourapp2.pyz
Run Code Online (Sandbox Code Playgroud)
以便您可以将文件运行为:
$ ./yourapp2.pyz
Run Code Online (Sandbox Code Playgroud)
作为旁注, a.pyz只不过是一个.zip文件。您可以在没有 的情况下自己创建一个zipapp,只需__main__.py在顶层包含一个文件。这将是您的包的入口点。
小智 2
不是文件,而是文件夹。使用 virtualenv ( https://virtualenv.pypa.io/en/stable/ )。您可以指定 python 版本,它将安装在文件夹中:
virtualenv -p /usr/bin/python2.6 <path/to/new/virtualenv/>
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用 pip 为该特定环境安装软件包和模块,然后压缩该文件夹并移动它。
| 归档时间: |
|
| 查看次数: |
5462 次 |
| 最近记录: |