[[Vorlage(Baustelle, 31.12.2015, noisefloor)]] [[Vorlage(Getestet, trusty)]] {{{#!vorlage Wissen [:Terminal: Ein Terminal öffnen] }}} [[Inhaltsverzeichnis()]] [[Bild(anaconda_logo.png, align=left)]] [https://www.continuum.io/why-anaconda Anaconda] {en} ist eine Python-Distribution, welche auf wissenschaftliches Arbeiten und die Analyse von (großen) Datenmengen ausgelegt ist. Anaconda ist kostenlos und frei - und besteht auch aus freier Software - die hinter dem Projekt stehende Firma [https://www.continuum.io/ Continuum Analytics] {en} bietet aber zusätzlichen kommerziellen Support an. Anaconda bringt alles nötige mit, inklusive dem Python-Interpreter. Dadurch ist die Anaconda unabhängig vom darunter liegenden System. Anaconda an sich enthält keine Python-Module, die man auch nicht auf anderem Wege wie über die Paketverwaltung oder [:pip:] installieren könnte. Der Vorteil von Anaconda ist, dass man sich nicht selber um das Auflösen der Teils komplexen Abhängigkeiten kümmern muss. Außerdem besitzt Anaconda einen eigenen Paketmanager namens [#conda Conda], welcher alle Pakete innerhalb der Distribution aktuell hält. Eine komplette Übersicht über die enthaltenen Python-Module findet man in der [http://docs.continuum.io/anaconda/pkg-docs Dokumentation] {en} = Installation = Anaconda muss manuell installiert werden. Dazu lädt man von der [https://www.continuum.io/downloads Downloadseite] {en} die passende Datei herunter. Zur Auswahl stehen je eine Version mit Python 2.7 und Python 3.x Interpreter für 32bit und 64bit Systeme. Je nach Version ca. 270 -290 MB groß. Nachdem die Datei heruntergeladen ist, führt man diese im Terminal[1] aus, z.B. {{{#!vorlage Befehl bash Anaconda3-2.4.1-Linux-x86_64.sh }}} Der Teil `2.4.1` und `-86_64` ist dabei ggf. je nach heruntergeladener Version anzupassen. [[Vorlage(Fremd, Software)]] Standardmäßig installiert Anaconda alle Programm in das Homeverzeichnis des Benutzer in ein eigenes Unterverzeichnis namens '''anaconda3''' (Anaconda für Python 3) bzw. '''anaconda2''' (Anaconda für Python2). Möchte man ein anderes Zielverzeichnis, dann kann man dies im Installer bei der entsprechende Frage eingeben. Zum Schluss fragt der Installer, ob das Installationsverzeichnis von Anaconda dem Suchpfad für Programme hinzugefügt werden soll. Antwortet man hier mit "ja", dann wird der entsprechende Eintrag in der Datei `.bashrc` vorgenommen. {{{#!vorlage Warnung Fügt man Anaconda dem Suchpfad hinzu, dann kann sich dies ggf. auf das gesamte System auswirken. So findet z.B. der Aufruf von `python3` zuerst den von Anaconda installierten Python 3 Interpreter - welcher aber eventuell eine andere Version haben kann wie der, der systemweit installiert ist. Was wiederum im schlechtesten Fall dazu führt, dass Python 3 Programme nicht mehr wie erwartet funktionieren. }}} = Benutzung = Nach der Installation ist die Anaconda-Distribution bzw. die darin enthaltene Software einsatzbereit. Im folgenden wird davon ausgegangen, dass Anaconda im [:Homeverzeichnis:] (z.B. '''~/anaconda3''') installiert ist und dass man Anaconda nicht dem Suchpfad hinzugefügt hat. Zuerst wechselt man ins Unterverzeichnis '''bin'''. Hier kann man dann z.B. {{{#!vorlage Befehl ./python3 #python3 Interpreter ./idle3 #IDLE IDE für Python 3 ./ipython #IPython interaktive Shell }}} aufrufen. Innerhalb der von Anaconda installierten Python-Interpreter bzw. Shells / IDEs können nur Python-Module importiert werden, welche Anaconda mit installiert hat. Andere, unabhängig von Anaconda installierte Module sind nicht "sichtbar". Umgekehrt kann der systemweite Python-Interpreter auch keine Module importieren, welche in Anaconda installiert sind. == conda == conda ist der Paketmanager von Anaconda, der aber auch andere Aufgaben wie das Anlegen von virtuellen Umgebungen übernimmt. Der allgemeine Aufruf, ebenfalls im Unterverzeichnis '''bin''' lautet: {{{#!vorlage Befehl ./conda BEFEHL OPTION(EN) }}} === Paketverwaltung === Mit conda können weitere Python-Module innerhalb von Anaconda nachinstalliert werden: {{{#!vorlage Befehl ./conda install --name MODUL }}} oder auch wieder entfernt: {{{#!vorlage Befehl ./conda remove --name MODUL }}} Mit dem Befehl {{{#!vorlage Befehl ./conda update conda }}} wird conda selbst aktualisiert. Eine komplette Befehlsübersicht ist in der [http://conda.pydata.org/docs/using/pkgs.html Dokumentation zu finden] {en}. === virtuelle Umgebungen === Die Nutzung von virtuellen Umgebungen entspricht [:virtualenv:], wird aber über conda gesteuert. Zum Anlagen von virtuellen Umgebungen dient der Befehl: {{{#!vorlage Befehl conda create --name NAME MODUL(E) }}} `NAME` und `MODUL` sind dabei Pflichtangaben. Möchte man die virtuelle Umgebung aktivierten, so wechselt man in deren Verzeichnis ('''envs/NAME''') und für dort den Befehl {{{#!vorlage Befehl source bin/activate NAME }}} aus. Deaktiviert wird die virtuelle Umgebung über {{{#!vorlage Befehl source deactivate }}} Eine Übersicht über alle angelegten virtuellen Umgebung liefert: {{{#!vorlage Befehl ./conda env list }}} ausgeführt im '''bin''' Verzeichnis der Anaconda-Installation. Eine komplette Übersicht über virtuellen Umgebungen mit conda findet man in der [http://conda.pydata.org/docs/using/envs.html Dokumentation] {en}. = Deinstallation = Zur Deinstallation löscht man einfach das komplette Installationsverzeichnis inklusive aller Unterverzeichnisse. Hat man Anaconda dem Suchpfad hinzugefügt, dann muss man zusätzlich noch die `PATH` Variable in der Datei '''.bashrc''' editieren und den Eintrag entfernen, welche auf den Installationspfad von Anaconda zeigt. = Links = * [https://www.continuum.io/documentation Dokumentation] {en} zu Anaconda * [http://conda.pydata.org/docs/index.html vollständige Dokumenation] {en} zu conda #tag: Programmierung, Python