- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我已经重新安装了我的操作系统(从 Windows XP 移动到 Windows 7)。我已经重新安装了 Python 2.7。
但是我在我的旧环境中安装了很多包。(Django、sciPy、jinja2、matplotlib、numpy、networkx,仅举一个 View )
我的旧 Python 安装仍然位于数据分区上,所以我想知道是否可以将旧 Python 库文件夹复制粘贴到新安装上?还是我需要重新安装每个软件包?
包是否在注册表、系统变量或类似的地方保留任何信息?
是否依赖于包?
最佳答案
这就是您必须能够对项目进行布局的关键点,因此需要专门的工具。
通常,Python 包不会做处理注册表这样奇怪的事情(除非它们是通过 MSI 安装程序打包的)。问题可能始于包含 C 扩展的包,因此移动到另一个版本的操作系统或从 32 位架构到 64 位架构将需要重新编译/重建这些。因此,最好将所有软件包重新安装到新系统,如下所示。
您的需求可能会有所不同,但您绝对必须选择构建环境的方式。如果您没有并且计划拥有大量不同的项目,您可以考虑下面的第一种方法,第二种方法更有可能为不同的项目或同一项目的不同版本设置开发环境。
全局环境(您系统中的 Python 安装以及已安装的软件包)。
这里可以考虑使用pip .在这种情况下,您的项目可以有 requirements包含项目所需所有包的文件。基本上,需求文件是一个包含包名称的文本文件(在 PyPI 及其版本上)。
隔离环境。它可以使用特殊工具或专门组织的路径来实现。
在这里 pip 可以与 virtualenv 优雅地结合.这种方式被很多开发人员强烈推荐(我必须提醒一下,即将发布的 Python 3.3 包含 virtualenv 作为标准库的一部分)。这种方法假设使用自己的 Python 解释器实例和已安装的包创建虚拟 shell。
另一种用于实现隔离环境的流行工具称为构建。它将你的项目源代码和依赖项放在一个路径中,这样你就可以获得与 virtualenv 创建的相同的效果。 buildout 的巨大优势在于它建立在可插入配方(实现不同常见项目部署任务的代码片段)的思想之上,并且在 Internet 上有数百个稳定可靠的配方。
virtualenv 和 buildout 都可以帮助你解决安装依赖时的头痛问题,解决同一个包在一台机器上的不同版本的问题。
选择你的命运......
关于python - 将 Python 环境移至新的操作系统安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12167261/
我有一个类似于下面给出的 for 循环。 for(int i=0; i<10; i++) { boolean condition = checkCondition(); /* line 3
我有一个循环,处理文件夹的每个文件。万一文件损坏而无法打开,我想: -向用户显示错误消息 -停止执行剩余的代码 -循环到下一个文件 问题是,如果无法在循环开始时打开文件,则仍有许多代码将要执行,这将引
我知道我可以将键绑定(bind)到“移至行首”,但这会忽略缩进。 我正在寻找的是移动到一行文本的开头,以便: CGRect example = CGRectMake(view.frame.origin
我有一个用户请求,我正在努力满足,我能想到的最简单的解释方法是使用图片说明: 本质上,用户正在输入大量日期。而不是输入 MM [反斜杠(或右箭头)] DD [反斜杠] YYYY [反斜杠] 等 ...
我想打开一个 pdf 文件并移动到 C++ 和 qt 程序中的特定书签。根据我的研究,我们可以使用 URL 和命令提示符转到书签。使用 URL 具有特殊格式,如:fileName.pdf#page=3
我正在尝试移至 PHP 记录集中的下一条记录,但遇到了一些问题。 这是我的页面顶部用于设置我的记录集的内容。 $result = mysqli_query($con,"SELECT * FROM
我已经制作了一个在 java 类中运行良好的程序..但是当我将我的代码移动到 servlet 时它并没有像预期的那样运行程序创建一些文件写入它们,然后再从中读取。问题是当我将代码移动到 servlet
我遇到了在 64 位 Windows 上运行的 32 位旧版应用程序的问题。有问题的应用程序使用 CreateFileMapping 创建共享内存。当它在 64 位 Windows 上运行时,任何从另
我们计划迁移到 TFS。虽然我讨厌它,但由于各种原因我们不得不这样做。 我们有开发、暂存和实时分支。我们是否将每个分支的源代码作为单独的文件夹移至 TFS,并稍后将其转换为分支? 是否可以保留历史记录
有人可以为我提供一些关于如何将此代码移植到 renderscript 以获得更好性能的指南吗? private void someMethod() { for (int i = 0; i < src
我有一个非常大的稀疏矩阵,我想将其发送到 Java 函数。我写了一个java代码来完成这个任务,但是它很慢,所以我正在寻找更好的解决方案。我从 R 3 数组发送如下 TMPmat <- as(mySp
我正在移动一张旧的 Mantis table ,上面有 varchar(64) category_id 列添加到新的 Mantis 表中,该表的 int(10) category_id 列。 简化后的
将中等流量网站的所有读取查询从 mysql 移至 solr 是否值得?我们已经使用 solr 作为我们网站的搜索引擎。我们每 24 小时将整个记录加载到 solr 中一次,然后每 20 分钟运行部分导
我在 MySQL (innodb) 中有三个表(X、Y 和 Z)。 X是一个超过1000万行的表,并且以Y为主键作为外键。同样,Z是超过3000万行的表,并且以Y为主键作为外键。 现在的问题是 Y 的
我在没有编程经验的情况下开始探索 Swift2。 我有以下代码在 Playgrounds 中运行良好,使用快速 View 和内联 View 方法。 如何将它与 Storyboard中的实际标签相关联?
在CSAPP练习3.4中 src_t v; dest_t *p; *p = (dest_t) v; 当src_t为char且dest_t为int时,答案为 movsbl %al, (%edx) (v
我正在测试我正在构建的 Webjob 的 Poison 消息处理。 一切似乎都按预期进行,除了一件奇怪的事情: 当一条消息被移动到“-poison”队列时,它的幽灵似乎仍然隐藏在主作业队列中(不可见)
我是 Android/Java 新手,所以请耐心等待。 我从 LoginActivity > onCreate 移动了代码进入我创建的 fragment FragmentLogin方法onCreate
这只是我真实代码的演示,但问题是一样的。有没有其他或更好的解决方案。为什么 animate() 方法不起作用...... $('document').ready(function() { $('p
我有一个小工件。 HTML: X CSS: #it { background: blue; width: 40px; text-align: center; color
我是一名优秀的程序员,十分优秀!