在Python中安装软件包 - Pip / cmd与在Lib / site-packages中放置文件

时间:2015-07-18 20:39:22

标签: python packages

每当我谷歌'导入X包/模块'时,我总会看到一堆关于使用pip或shell命令的教程。但我总是把下载的文件放到site-packages文件夹中,当我在PyCharm中使用'import'时它运行得很好。

我想知道的原因是因为我今天正在下载NumPy,当我以与我一直相同的方式复制文件时,PyCharm没有显示任何错误。我只是想知道我是否误解了安装包的整个概念。

编辑:谢谢你的回答!我现在要学习如何使用pip。

2 个答案:

答案 0 :(得分:2)

包管理器解决了依赖和卸载等问题。

此外,使用pip安装软件包时,通常使用setup.py脚本构建软件包。虽然它可能不是纯Python模块的问题,如果包包含任何扩展模块或其他一些自定义的东西,将文件复制到site-packages只是不起作用(我实际上不确定为什么它适用于您的情况使用numpy,因为它确实包含C扩展模块。)

答案 1 :(得分:2)

使用包管理器(pip)的一个要点是可移植性。使用pip,您只需在项目中包含requirements.txt即可在任何计算机上进行操作,无论是Windows,Linux还是Mac。当转移到新的环境/操作系统时,pip将负责为您正确安装软件包;请注意,程序包可以具有特定于操作系统的步骤,因此当您移动到另一个操作系统时,您的复制粘贴Windows设置现在可能会起作用。

此外,使用复制粘贴方法,您可以随处携带大量依赖项。我想如果你想切换机器(不一定是操作系统),你可以将所有从项目代码复制到依赖项。使用pip,您可以保持工作目录更精简,所有这些都是以单个requirements.txt为代价的。