Grundlegende Anleitung zur Verwendung der Python-Paketverwaltung (pip, conda)

Python-Paketverwaltung

Überblick

einführen

Python verfügt über eine Fülle von Open-Source-Bibliotheken und -Paketen von Drittanbietern, die dabei helfen können, verschiedene Aufgaben zu erledigen und die Funktionalität von Python zu erweitern, wie z. B. NumPy für wissenschaftliches Rechnen, Pandas für die Datenverarbeitung, Matplotlib zum Zeichnen usw. Bevor Sie mit dem Schreiben von Pytlhon-Programmen beginnen, möchten Sie möglicherweise einige häufig verwendete Python-Bibliotheken installieren, damit Sie sie beim Programmieren problemlos verwenden können.

Um Bibliotheken und Pakete von Drittanbietern bequem verwalten zu können, müssen Sie ein Python-Paketverwaltungstool wie pip, conda usw. installieren. Diese Tools helfen beim Installieren, Aktualisieren und Entfernen von Python-Paketen und erleichtern so die Verwaltung von Python-Abhängigkeiten.


Der Unterschied zwischen Anaconda, Conda, Pip, Virtualenv

  • Anakonda

    Anaconda ist eine Distribution, die über 180 wissenschaftliche Pakete und deren Abhängigkeiten enthält. Zu den darin enthaltenen wissenschaftlichen Paketen gehören: Conda, Numpy, Scipy, Ipython Notebook usw.

  • conda

    conda ist ein Verwaltungstool für Pakete, ihre Abhängigkeiten und Umgebungen.

    Anwendbare Sprachen: Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN

    Anwendbare Plattformen: Windows, macOS, Linux

    verwenden:

    • Installieren, führen und aktualisieren Sie Pakete und ihre Abhängigkeiten schnell.

    • Erstellen, speichern, laden und wechseln Sie Umgebungen bequem auf Ihrem Computer.

      Wenn das erforderliche Paket eine andere Python-Version erfordert, ist kein Wechsel in eine andere Umgebung erforderlich, da Conda auch ein Umgebungsmanager ist. Mit nur wenigen Befehlen können Sie eine völlig separate Umgebung erstellen, um verschiedene Python-Versionen auszuführen, während Sie weiterhin Ihre gewohnte Python-Version in Ihrer regulären Umgebung verwenden. ——

    conda wurde für Python-Projekte erstellt, ist aber für viele der oben genannten Sprachen verfügbar.

    Der Conda-Paket- und Umgebungsmanager ist in allen Versionen von Anaconda enthalten.

  • Pip

    pip ist ein Paketmanager zum Installieren und Verwalten von Softwarepaketen.

    Anwendbare Sprache von Pip: Python

    Standardmäßig in Python installierte Versionen:

    • Python 2.7.9 und nachfolgende Versionen: Standardmäßig installiert, der Befehl lautet pip
    • Python 3.4 und nachfolgende Versionen: Standardmäßig installiert, der Befehl lautet pip, pip3

    Der Ursprung des Pip-Namens: Pip ist nach einer rekursiven Abkürzung benannt . Es wird allgemein angenommen, dass der Name aus zwei Quellen stammt:

    • „Pip installiert Pakete“
    • „Pip installiert Python“ („pip installiert Python“)
  • virtuelle Umgebung

    virtualenv ist ein Tool zum Erstellen einer isolierten Python-Umgebung.

    Das Problem lösen:

    • Wenn ein Programm die Python 2.7-Version und ein anderes Programm die Python 3.6-Version verwenden muss und alle Programme im Standardpfad unter dem System installiert sind, z. B.: , wird das Programm, das nicht aktualisiert werden sollte, versehentlich /usr/lib/python2.7/site-packagesaktualisiert Auswirkungen auf andere Programme haben.
    • Das Installieren eines Programms oder das Ändern seiner Bibliothek oder Bibliotheksversion während der Ausführung des Programms führt dazu, dass das Programm abstürzt.
    • Beim Sharing-Hosting site-packageskönnen Pakete nicht im globalen Verzeichnis installiert werden.

    Virtualenv erstellt eine Umgebung für sein eigenes Installationsverzeichnis, das keine Bibliotheken mit anderen Virtualenv-Umgebungen teilt; optional kann es auch keine installierten globalen Bibliotheken verknüpfen.


Pip vs. Conda

  • Abhängigkeitsprüfung

    • Pip:

      Andere erforderliche Abhängigkeiten werden möglicherweise nicht unbedingt angezeigt.

      Bei der Installation des Pakets werden die Abhängigkeiten möglicherweise einfach ignoriert und installiert, was jedoch zu Fehlern in den Ergebnissen führt.

    • conda:

      Listen Sie andere erforderliche Abhängigkeiten auf.

      Installiert seine Abhängigkeiten automatisch, wenn ein Paket installiert wird.

      Sie können problemlos zwischen verschiedenen Versionen des Pakets wechseln.

  • Umweltmanagement

    • pip: Es ist schwierig, mehrere Umgebungen aufrechtzuerhalten
    • conda: Es ist bequemer, zwischen verschiedenen Umgebungen zu wechseln, und die Umgebungsverwaltung ist relativ einfach
  • Auswirkungen auf das integrierte Python des Systems

    • pip: Das Aktualisieren/Zurücksetzen/Deinstallieren von Paketen im systemeigenen Python wirkt sich auf andere Programme aus.
    • conda: Es hat keine Auswirkungen auf das mit dem System gelieferte Python.
  • Anwendbare Sprache

    • pip: nur für Python
    • conda: Verfügbar für Python (hauptsächlich), R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN.
  • Die Beziehung zwischen Conda und Pip, Virtualenv

    Conda kombiniert die Leistung von Pip und Virtualenv.

    Conda verwendet ein neues Paketformat und pip kann das Paketformat von Conda nicht installieren und analysieren. Es können zwei Tools verwendet werden, die jedoch nicht interagieren können, z. B. die Verwendung von pip zur lokalen Installation des Offline-Pakets von Conda.


pip (Python-Paketmanager)

einführen

  • pip ist Pythons offizieller Paketmanager und wird mit Python-Versionen ausgeliefert. Bei der Installation von Python wird auch pip installiert.
  • Verschiedene Python-Bibliotheken (Pakete) von Drittanbietern, die nicht Teil der Python-Standardbibliothek sind, können einfach über pip installiert und verwaltet werden, sodass sie direkt in den Code des Projekts eingeführt und verwendet werden können.
  • pip ist ein Befehlszeilentool, das direkt im Terminal oder in der Eingabeaufforderung verwendet werden kann.

Grundlegende Befehle

  • Python-Paketverwaltung

    # 查看已安装的包
    pip list
    # 查看需要升级的库
    pip list -o
    
    # 安装一个 python 包
    pip install package_name			# package_name:具体地包名
    # 安装特定版本的包
    pip install package_name==version_number
    # 安装本地包
    pip install /path/to/package		# /path/to/package:本地包路径
    
    # pip的超时时间默认为15秒,如果下载速度过慢,可以使用以下命令设置超时时间为60秒
    # 方式1:添加参数--default-timeout=60。# 方式:在配置里面[global]下添加timeout=60
    pip install --default-timeout=60 package_name
    
    # 指定国内的源(阿里云)来安装某个包
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple <package-name>
    # 注意:如果url是http的化,需要信任(因为未加密),可以通过下面两个方法解决
    # 方式1:安装时加入 --trusted-host 临时参数
    pip install -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com/simple package_name
    # 方式2:在 pip.conf 中加入 trusted-host 选项,该方法是一劳永逸
    [global]
    index-url = http://mirrors.aliyun.com/pypi/simple/
    [install]
    trusted-host=mirrors.aliyun.com
    
    # 升级包
    pip install --upgrade package_name
    # 升级pip
    pip install --upgrade pip
    
    # 卸载包
    pip uninstall package_name
    
    # 安装包的依赖项
    pip install package_name[dependencies]
    
    # 验证已安装的库是否有兼容依赖问题
    pip check package_name
    
    # 下载某个包到指定的路径下(不安装)
    pip download package_name -d "某个路径"  
    
    # 查看包的详细信息
    pip show package_name
    
    # 导出已安装的包列表
    pip freeze > requirements.txt
    # 从requirements.txt文件中安装包
    pip install -r requirements.txt
    
  • Laden Sie die Quellverwaltung herunter

    # 新增全局下载源。国内最好更换pip的源,以便更快地下载包
    pip config set name value
    # 示例:清华源
    pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
    
    # 删除全局下载源
    pip config unset name
    
    # 查看pip下载的安装包的默认路径
    python -m site
    
    # 显示pip的配置列表
    pip config list
    # 显示pip文件的所有存储位置
    pip -v config list
    # 输出的不同的目录对应不同的参数 --global(全局)、--user(用户) 、--site
    
  • andere Befehle

    # 清理缓存。pip安装包的时候,会下载并缓存一些包以便后续使用,不会自动删除,这可能会占用磁盘空间,需要手动删除
    pip cache purge
    
    # 查看pip版本
    pip --version
    pip -V
    

Allgemeine Parameteroptionen für Pip

  • -r,--requirement <file>: Von der angegebenen Anforderungsdatei installieren. Diese Option kann mehrfach verwendet werden.

  • -c,--constraint <file>: Verwenden Sie die angegebene Einschränkungsdatei-Einschränkungsversion. Diese Option kann mehrfach verwendet werden.

    Einschränkungsdateien sind intelligenter als Anforderungsdateien und unterscheiden sich von Anforderungsdateien in einem wesentlichen Punkt: Das Einfügen eines Pakets in eine Einschränkungsdatei führt nicht zur Installation des Pakets, wohingegen eine Anforderungsdatei alle aufgelisteten Pakete installiert. Es wird häufig verwendet, um die Abhängigkeiten eines Pakets festzulegen.

  • --no-deps: Paketabhängigkeiten nicht installieren

  • --pre,pip: Find umfasst Vorabversionen und Entwicklungsversionen. Standardmäßig sucht pip nur nach stabilen Versionen.

  • -e,--editable <path/url>: Projekt im bearbeitbaren Modus (z. B. Setuptools-Entwicklungsmodus) von der lokalen Projekt-Road-King- oder VCS-URL installieren.

  • -t,--target <dir>: Installieren Sie das Paket in <dir>. Standardmäßig werden dadurch keine <dir>vorhandenen Dateien oder Ordner ersetzt

  • --platform <platform>: Verwenden Sie nur <platform>Räder, die mit kompatibel sind. Standardmäßig wird die Plattform verwendet, auf der das System ausgeführt wird. Verwenden Sie diese Option mehrmals, um mehrere vom Zielinterpreter unterstützte Plattformen anzugeben

  • -U,--update: Aktualisieren Sie alle angegebenen Pakete auf die neuesten verfügbaren Versionen. Der Umgang mit Abhängigkeiten hängt von der verwendeten Upgrade-Strategie ab.

  • --upgrade-strategy <upgrade_strategy>: Bestimmt, wie Abhängigkeits-Upgrades gehandhabt werden sollen.

    Zwei Modi:

    • „eager“: Abhängigkeiten werden aktualisiert, unabhängig davon, ob die aktuell installierte Version der Abhängigkeit die Anforderungen für die Aktualisierung des Pakets erfüllt
    • „only-if-needed“: Nur aktualisieren, wenn die Anforderungen des Upgrade-Pakets nicht erfüllt sind
  • --force-reinstall: Alle Pakete neu installieren, auch wenn sie bereits aktuell sind

  • -I,--ignore-installed: Installierte Pakete ignorieren und überschreiben.

    Dies kann Ihr System beschädigen, wenn vorhandene Pakete unterschiedliche Versionen haben oder ein anderer Paketmanager installiert ist.

  • --compile: Python-Quelldateien in Bytecode kompilieren

  • --no-compile: Python-Quelldateien nicht in Bytecode kompilieren

  • --no-binary <format_control>: Verwenden Sie keine Binärpakete.

    <format_control>kann sein:

    • all: Deaktiviert alle Binärpakete
    • keine: Leeren Sie die zuvor bereitgestellten Pakete oder verwenden Sie die angegebenen Pakete, getrennt durch Kommas

    Beachten Sie, dass einige Pakete schwierig zu kompilieren sind und bei Verwendung dieser Option möglicherweise nicht installiert werden können.

  • --only-binary <format_control>: Verwenden Sie keine Quellpakete


Conda (Anaconda)

Referenz: Tutorial zur Einführung, Installation und Verwendung von Anaconda

einführen

  • Conda ist ein Open-Source-Paketverwaltungssystem und Umgebungsverwaltungssystem, das unter Windows, macOS und Linux läuft.

    Conda installiert, führt und aktualisiert Pakete und ihre Abhängigkeiten schnell, sodass Sie problemlos Umgebungen auf Ihrem Computer erstellen, speichern, laden und wechseln können.

    Es wurde ursprünglich für Python-Programme erstellt, da es viele Versionen von Python gibt und seine Bibliotheken ebenfalls sehr umfangreich sind und viele Abhängigkeiten zwischen Bibliotheken bestehen. Daher ist es sehr mühsam, Versionen von Bibliotheken zu installieren und zu verwalten. Daher ist Conda so konzipiert ein Tool zum Verwalten von Versionen und Python-Umgebungen, kann aber auch Software in jeder beliebigen Sprache verpacken und verwalten.

    Conda ist in Anaconda enthalten, sodass Sie Conda direkt nach der Installation von Anaconda verwenden können. Klicken Sie auf den Link zum Herunterladen und wählen Sie das entsprechende System und den Versionstyp aus.

  • Anaconda ist eine kostenlose und Open-Source-Python- und R-Distribution für die Informatik (Datenwissenschaft, maschinelles Lernen, Big-Data-Verarbeitung und prädiktive Analysen).

    Anaconda widmet sich der Vereinfachung des Paketverwaltungssystems und der Bereitstellung und wird mit Conda, Python und mehr als 150 wissenschaftlichen Paketen und zugehörigen Paketen geliefert.

    Die Pakete von Anaconda werden mit dem Paketverwaltungssystem Conda verwaltet.


Da im Prozess der Projektentwicklung und -bereitstellung die für das Projekt erforderliche virtuelle Umgebung unterschiedlich ist, z. B. Python-Version, Modulversion usw., können Sie über Conda eine Umgebung für jedes Projekt erstellen und diese dann verwalten und verwenden entsprechende Umgebung.

  • Verwaltung von Paketen und virtuellen Umgebungen in mehreren Programmiersprachen

  • Sehr einfach zu erledigende Paketinstallations-, Betriebs-, Aktualisierungs-, Lösch- und Abhängigkeitsprobleme

  • Über 7.500 Pakete auf repo.anaconda.com bedienbar

  • Es ist sehr einfach, verschiedene Umgebungen zu erstellen, zu speichern, zu laden und zu wechseln

  • Unterstützte Sprachen: Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN

    Im Allgemeinen wird es jedoch hauptsächlich zur Verwaltung von Python-Paketen verwendet

  • Unterstützte Betriebssysteme: Windows, macOS und Linux


Allgemeine Conda-Befehle

  • Virtuelles Umgebungsmanagement

    # 查看所有环境。注:1.*号所在的行表示当前所在环境。2.系统默认虚拟环境为base
    conda env list
    conda info -e
    
    # 创建新的虚拟环境。注:1.遇到yes/no输入yes,即可完成创建。
    conda create -n envs_name python=python_version
    # envs_name			:指定环境名称
    # python_version	:指定Python版本
    
    # 进入虚拟环境
    conda activate envs_name
    # 退出当前环境
    conda deactivate
    
    # 删除虚拟环境
    conda env remove -n envs_name
    
    # 复制虚拟环境
    conda create -n new_envs_name --clone old_envs_name
    
    # 更新python
    conda update python
    
    # 更新conda版本。注:必须在base环境更新
    conda update conda
    
  • Modul-/Paketverwaltung

    # 查看当前环境的包列表
    conda list
    # 查看指定环境的包列表
    conda list -n envs_name
    
    # 在当前环境安装包。注:1.默认安装最新版本,2.同时安装多个包用空格分隔。
    conda install package_name
    # 在指定环境安装包
    conda install --name env_name package_name
    # 安装指定版本的包。注:使用conda安装指定包时,conda可以自动处理相关的依赖包
    conda install numpy=1.19
    # 指定范围内中版本包安装(安装版本处于1.0.4到1.1.1之间的pandas)
    conda install "pandas>1.0.4,<1.1.1"
    # 指定list中版本包安装(安装pandas 1.0.4版或者1.1.1版)
    conda install "pandas[version='1.0.4 |1.1.1']"
    
    # 包安装跳过【y/n】。默认情况下为 false,即安装过程中会请求是否继续安装,设置为yes则不再弹出请求。
    conda config --set always_yes yes
    
    # 卸载当前环境的包
    conda remove package_name
    # 卸载指定环境的包
    conda remove --name env_name package_name
    
    # 升级当前环境的包
    conda update/upgrade package_name
    # 升级指定环境的包
    conda update/upgrade -n env_name package_name
    # 升级全部包
    conda upgrade --all
    
    # 精确查找包
    conda search package_name
    # 模糊查找包,模糊符号为 *
    conda search *<模糊词>*
    # 查看某个范围内版本包
    conda search "PKGNAME [version='>=1.0.0,<1.1']"
    
  • Conda-Download-Quellenverwaltung

    # 查看已配置下载源
    conda config --show channels
    
    # 查看已配置下载源优先级
    conda config --get channels
    
    # 新增下载源(清华大学源)
    conda config --add channels channels_Name
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    
    # 删除下载源
    conda config --remove channels channels_Name
    
    # 显示包的安装来源
    conda config --set show_channel_urls yes
    

    Hinweis: Die Conda-Downloadquelle wird tatsächlich in die .condarc-Datei geschrieben:

    • Der Pfad des Linux- Systems ist/home/xx/.condarc

    • Der Pfad des Windows- Systems istC:\Users\admin\.condarc

      Windows hat standardmäßig keine .condarc-Datei, sie muss von conda config --set show_channel_urls yes generiert werden

  • andere Befehle

    # 检查conda版本
    conda --version
    # 查看conda系统版本等信息
    conda info
    # 查看conda所有配置信息
    conda config --show
    

IDEA konfiguriert die virtuelle Conda-Umgebung

IntelliJ IDEA unterstützt die Verwendung von Conda zum Erstellen virtueller Umgebungen für Python nach der Installation und Aktivierung des Python-Plugins.

Erstellen Sie eine Conda-Umgebung:

  1. Stellen Sie sicher, dass Sie Anaconda oder Miniconda heruntergeladen und auf Ihrem Computer installiert haben.

  2. Navigieren Sie zu Datei | Projektstruktur

    • Methode 1: Datei >>> Projektstruktur in der oberen linken Ecke
    • Methode 2: Tastenkombination: Strg+Umschalt+Alt+S

    Fügen Sie hier eine Bildbeschreibung ein

  3. Wählen Sie im Dialogfeld „ Projektstruktur “ im Abschnitt „ Plattformeinstellung “ die Option „ SDK “ aus , fügen Sie dann ein neues SDK hinzu und wählen Sie dann „ Python SDK “ aus dem Popup-Menü aus

    Fügen Sie hier eine Bildbeschreibung ein

  4. Wählen Sie im linken Bereich des Dialogfelds „Python-Interpreter hinzufügen“ die Option „Conda-Umgebung“ aus. Die folgenden Aktionen hängen davon ab, ob zuvor eine Conda-Umgebung vorhanden war.

    Wenn „ Neue Umgebung “ ausgewählt ist:

    1. Geben Sie den Standort der neuen Conda-Umgebung im Feld Standort an. Beachten Sie, dass das Verzeichnis, in dem sich die neue Conda-Umgebung befinden soll, leer sein muss!
    2. Wählen Sie die Python-Version aus der Python- Versionsliste aus
    3. Geben Sie den Speicherort der ausführbaren Conda-Datei im Feld „Conda- Ausführungsdatei “ an
    4. Aktivieren Sie bei Bedarf das Kontrollkästchen „Für alle Projekte verfügbar machen“.

    Wenn Sie Vorhandene Umgebung ( empfohlen ) auswählen:

    1. Erweitern Sie die Liste „Interpreter“ und wählen Sie einen beliebigen vorhandenen Interpreter aus. Alternativ klicken Sie, um „ … “ auszuwählen und den Pfad zur ausführbaren Conda-Datei im Dateisystem anzugeben, z. B.C:\Users\jetbrains\Anaconda3\python.exe

      Hinweis: Verwenden Sie am besten python.exe im Conda-Verzeichnis, da sonst die installierte Bibliothek eines Drittanbieters möglicherweise nicht gescannt wird

    2. Geben Sie den Speicherort der ausführbaren Conda-Datei im Feld „Conda- Ausführungsdatei “ an

    3. Aktivieren Sie bei Bedarf das Kontrollkästchen „Für alle Projekte verfügbar machen“.

  5. Klicken Sie auf OK, um die Aufgabe abzuschließen.

Supongo que te gusta

Origin blog.csdn.net/footless_bird/article/details/132534764
Recomendado
Clasificación