我有一个即将完成的python项目。 它的所有依赖项和软件包都在我的应用程序旁的venv中提供(应如此)。该项目是通过venv开发的。符合预期。
我的问题是:
如果我提交项目并包含venv文件夹,用户是否可以通过我提供的venv运行我的程序?
换句话说,如果我指示他们执行:path\to\my\venv\python.exe path\to\my\app.py
,它会起作用吗?
这是东西吗?
可选奖金问题:我在Windows上。假设我的程序与平台无关,那么如果它们在linux上,这种方法行得通吗? (我对此表示怀疑...)
谢谢。
答案 0 :(得分:1)
在Endyd和Kenny Ostrom发表评论并进行了一些研究之后,我在向以后的读者介绍我自己的问题。
虚拟环境不是为此类任务而设计的。不能保证将venv转移到另一个系统后可以正常工作。
常用的方法是使用pip通过pip freeze > requirements.txt
创建项目的“ requirements.txt”。
然后,用户将创建自己的venv,并使用pip install -r requirements.txt
将其venv与您的venv同步。
如果您想要的是可执行文件,可以使用某些工具,例如PyInstaller。