在Python-Pip/cmd中安装包与将文件放入Lib/site包

在Python-Pip/cmd中安装包与将文件放入Lib/site包,python,packages,Python,Packages,每当我在谷歌上搜索“导入X包/模块”时,我总会看到一大堆关于使用pip或shell命令的教程。但我总是把下载的文件放在site packages文件夹中,当我在PyCharm中使用“导入”时,效果很好 我想知道的原因是因为我今天下载的是NumPy,而当我用我以前的方式复制文件时,PyCharm没有显示任何错误。我只是想知道我是否误解了安装软件包的整个概念 编辑:谢谢你的回答!我现在开始学习如何使用pip。Package manager解决了依赖项和卸载等问题 此外,当使用pip安装软件包时,通常

每当我在谷歌上搜索“导入X包/模块”时,我总会看到一大堆关于使用pip或shell命令的教程。但我总是把下载的文件放在site packages文件夹中,当我在PyCharm中使用“导入”时,效果很好

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


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

Package manager解决了依赖项和卸载等问题


此外,当使用
pip
安装软件包时,通常使用
setup.py
脚本构建软件包。虽然这对于纯Python模块来说可能不是问题,但如果包中包含任何扩展模块或其他自定义内容,那么将文件复制到
站点包
将不起作用(实际上我不确定为什么它在使用
numpy
时起作用,因为它确实包含C扩展模块)使用包管理器(pip)的要点之一是可移植性。使用pip,您只需在项目中包含requirements.txt,就可以在任何机器上使用它,无论是Windows、Linux还是Mac。当移动到新环境/OS时,pip将负责为您正确安装软件包;请注意,软件包可以具有特定于操作系统的步骤,因此当您移动到另一个操作系统时,复制粘贴的Windows设置现在可以正常工作

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