繁体   English   中英

在 python 中安装包并设置工作环境

[英]Installing packages in python and setting up the working environment

我已经使用 R 进行了一段时间的编码,但我想开始学习并在其机器学习应用程序中更多地使用 python。 但是,对于如何正确安装软件包和设置整个工作环境,我感到很困惑。 Unlike R where I suppose most people just use RStudio and directly install packages with install.packages() , there seems to be a variety of ways this can be done in python, including pip install conda install and there is also the issue of doing it在命令提示符或其中一个 IDE 中。 我已经下载了 python 3.8.5 和 anaconda3,我现在最迫切的问题是:

  1. 何时使用哪个命令安装软件包? (而且我是否应该总是在 windows 上的命令提示符又名 cmd 而不是在 jupyter 笔记本中执行此操作)
  2. 如何导航 cmd 语法/编码(例如用于安装软件包的 python 文档有这段代码: py -m pip install "SomeProject"以及如何使用它我是否还必须了解命令提示符中发生了什么,或者大多数操作是否发生在 IDE 中,而我大多不必触摸 cmd?)
  3. 如何设置各种工作目录(如 R 中的setwd() ),以便我的.ipynb文件可以保存到其他目录,或者如果我可以直接从另一个文件目标启动 IDE 则更好?

我尝试查看一些在线资源,但它们主要处理编码基础知识和 python 语言,而不是设置的这些技术方面,因此我非常感谢有关如何导航和设置 python 工作环境的一般建议. 非常感谢!

Python 使用不同的安装包方式。 Python 有一个名为venv的东西,它代表虚拟环境。 您将所有软件包安装在 venv 中。 通常对于每个新项目,您都会创建一个新的 venv。

  1. 通过在 windows 上使用 Anaconda,您可以在您指定的 anaconda 环境中安装所有内容。

  2. python -m pip install "modulename"是将modulename安装到默认 venv 的命令。 当没有指定其他 venv 时,您将能够使用此模块。 这是文档页面。 这是一个关于如何使用venv的教程

  3. 默认情况下 python 使用与您的代码相同的目录。例如C:/Users/me/home/mypythonfile.py将在C:/Users/me/home/中运行,并且可以访问此目录中的文件。// 但是,您可以使用../导航目录,或者您可以指定要打开的文件的绝对路径,例如with open("C:/system32/somesystemfile.sys") as file

回顾一下 conda 和 pip 的技术差异:

因此,Conda 是一个打包工具和安装程序,旨在比 pip 所做的更多; 处理 Python 包以及 Python 包本身之外的库依赖项。 两者也有许多相似的功能,您可以安装软件包或使用两者创建虚拟环境。

通常建议同时安装 conda 和 pip,因为有些软件包可能不适用于 conda 但 pip 可能不可用,反之亦然。

以两种方式安装的命令都很简单,但要记住的一件事是

  1. conda 将软件包存储在anaconda/pkgs directory
  2. pip 将其存储directory under /usr/local/bin/ for a Unix-based system, or \Program Files\ for Windows

您可以在 jupyter 笔记本中同时使用 pip 或 conda,它可以正常工作,但您可能会获得相同 package 的多个版本。

大多数情况下,您只会使用 cmd 来安装代码中使用的模块,或者创建环境, py -m pip install "SomeProject" 这里基本上意味着模块 "SomeProject" 将被下载到基础环境中。

您可以将conda视为具有各种附加功能的python ,例如某些预安装的软件包和工具,例如spyderjupyter 因此,当你说:

我已经下载了 python 3.8.5 和 anaconda3

这是否意味着您在计算机中安装了 python,然后还安装了 anaconda?

一般来说,或者至少在我看来,使用 anaconda 具有开发优势,但通常您只需在生产中使用简单的 python 安装(如果这适用于您)。

Anaconda 拥有自己的 package注册表/存储库 当您调用conda install <package>时,它将在那里搜索 package 并在可用时安装它。 您最好先搜索它,例如matplolib

pip是 package 管理器,用于Python Z209802FB858E2C83205027ZZCD 索引 pip还附带 anaconda。 因此,在 anaconda 环境中,您可以从任一来源安装软件包(使用pip install或 conda conda install )。 例如,来自 PyPIpandas 和来自 conda 的 pandas 无法保证两个来源中都存在包。 您必须先搜索或尝试一下。

在您的第一步中,我建议您只坚持一个开发环境(简单的pythonanaconda ,推荐第二个)。 因为这简化了问题:“哪个python和哪个pip在 cmd 行中执行?”。 也就是说,这些命令应该在任何终端中按预期工作,它可以是简单的cmd或像 PyCharm 或 VS Code 中的嵌入式命令。

您可以通过运行(至少在 windows 和 linux 上)来检查: which pythonwhich pip

Honestly, this is a question/answer that falls outside the scope of SO and for more info you would better check official websites, such as for anaconda or search for python vs anaconda blogs.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM