【问题标题】:How to properly send Python code?如何正确发送 Python 代码?
【发布时间】:2018-06-05 01:15:01
【问题描述】:

所以我想将我的 python 脚本发送到另一台计算机,但是它没有安装相同的包。有没有办法将整个 python 代码作为一个文件夹发送,该文件夹也将包含所有这些包? (我曾尝试通过该问题创建虚拟环境,这取决于虚拟环境中的许多代码是由别名文件组成的,而这些别名文件可能在另一台计算机上不存在)。 非常感谢您的帮助。

【问题讨论】:

标签: python virtualenv file-transfer


【解决方案1】:

你可以创建一个requirements.txt 文件,这里将是你项目中的所有包,如果你已经有 vitualenv 例如创建你的requirements.txt 执行

pip freeze > requirements.txt

requirements.txt 的示例

absl-py==0.2.1
amqp==2.3.1
asn1crypto==0.24.0

在这之后把你的所有项目都去掉,复制到另一个compure,创建一个新的virtualenv,输入你的virtualenv并制作

pip install -r requirements.txt

你将拥有所有的包裹

【讨论】:

  • 哦,我明白了,我想知道是否有可能直接发送文件夹中的所有内容? (将虚拟环境文件夹从一台计算机传输到另一台计算机也是一个好主意)非常感谢
  • 不,将您的 virtualenv 文件夹从一台计算机转移到另一台计算机是个坏主意
【解决方案2】:

除非使用 setup.py 文件创建可安装包的过程较长,否则您可以将脚本放在其自己的文件夹中,然后添加 pip 要求文件。 当你的 virtualenv 处于活动状态时,运行 bash/terminal 命令:

pip freeze > requirements.txt

确保您将需求文件与脚本一起发送,然后收件人可以简单地运行 bash/terminal 命令(在他们自己的 virtualenv 中,他们希望会这样做)

pip install -r requirements.txt

在运行脚本之前。

【讨论】:

  • 哦,有人抢先了。
  • 非常感谢您的回答,setup.py 会自动安装所有文件吗?
  • @Fozoro:是的,但它并不真正适用于独立脚本,因为它在活动的 python 环境中安装了一个包。在这种情况下,我认为它不适合您的需求。
  • 哦,我明白了,如果您要出售 python 脚本,您只需发送 requirements.text 文件和 .py 文件?或者你也发送 virtualenv 文件夹?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-24
  • 1970-01-01
  • 1970-01-01
  • 2017-12-11
  • 2022-11-03
  • 1970-01-01
相关资源
最近更新 更多