如何将包迁移到新的Python安装?

3 投票
3 回答
3651 浏览
提问于 2025-04-15 13:47

我该如何快速将我在旧电脑上安装的Python包迁移到新电脑上呢?

这是我的情况:

我正在从一台运行Python 2.5和Django 1.0的旧笔记本电脑升级到一台新笔记本电脑,我打算在新电脑上安装Python 2.6.2和Django 1.1。随着时间的推移,我在旧电脑上下载并安装了很多Python包(比如pygame、pyro、genshi、py2exe等等),有没有什么简单的方法可以把这些包复制到新电脑上,而不需要一个一个地去安装呢?

Gath

3 个回答

0

使用Portable Python,你就可以把所有东西放在你的USB闪存盘上。这样,你的整个开发环境随时都在口袋里,只需插入任何电脑就可以开始编程。

你甚至可以在同一个USB闪存盘上放多个版本的Portable Python,并且可以同时运行它们。这对于你正在过渡到Python 3.*,或者只是想尝试新东西的时候特别有帮助。

1

正如Vinay所说,有些常见的安装部分是不能直接复制的。此外,要记住,setup.py脚本可以做很多事情,比如它们可以检查Python的版本,然后决定怎么安装东西,或者它们可以写注册表条目,或者创建.rc文件等等。

我同意:重新安装这些软件包。你试图直接复制所有东西节省的时间,最终会在第一次遇到某个神秘问题时全部浪费掉,那时候你还得去调试。

另外,重新安装还有一个好处:如果你只在需要某个软件包的时候才安装它,那么你就不会去重新安装那些你已经不需要的软件包了。

3

如果这些包是纯Python写的,理论上你可以直接把它们从一个Lib\site-packages文件夹复制到另一个。不过,如果有些包包含C语言扩展,那就不行了,因为这些需要为每个Python版本重新编译。你还得考虑一些安装包创建的.pth文件,以及删除之前存在的.pyc文件等等。

我建议你还是直接重新安装这些包比较好。

撰写回答