Welches Virtual Environment?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
ThomasL
User
Beiträge: 1366
Registriert: Montag 14. Mai 2018, 14:44
Wohnort: Kreis Unna NRW

Um mit Python anzufangen und herum zu experimentieren muss nichts lokal installiert werden.
Das geht komplett online und kostenlos.

https://colab.google/
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
tommy_de
User
Beiträge: 6
Registriert: Sonntag 21. Mai 2023, 14:02

Vielen Dank erste einmal wieder :)
ThomasL hat geschrieben: Freitag 2. Juni 2023, 11:14 Das geht komplett online und kostenlos.
Von solchen Cloud-Lösungen bin ich nicht so ein Freund. Außerdem finde ich das ganze Drumherum irgendwie auch total interessant und spannend. Ich lerne ja auch eine Menge über diese Metaebene des Programmierens. Aber auch die Benutzung des Terminals und viele andere Dinge.
__deets__ hat geschrieben: Donnerstag 1. Juni 2023, 23:51 Beides existiert, weil beides von verschiedenen Leuten bevorzugt wird. Wie das bei dir aussieht, kann keiner wissen. Außer du selbst. Probier es aus.

Und du irrst, wenn du glaubst, dein Weg wäre pfeilgerade und ohne Irrwege. Du wirst in jedem Fall Probleme haben. Egal mit welchem Python und mit welcher Umgebung. Der einzige Weg damit umzugehen, ist anzufangen.
Ja, das stimmt schon. Allerdings möchte ich ungern viele Dinge installieren, um dann zu merken, dass ich es eigentlich auch vor der Installation herausfinden hätte können, dass ich das überhaupt nicht brauche.
Es geht auch nicht primär darum, Irrwege zu vermeiden, sondern auch das Lernen an sich und wofür was da ist und was die Intention dahinter ist. Ich will also das was „dahinter“ ist auch verstehen. Jedenfalls in der Hinsicht, dass ich weiß, warum man X nimmt oder nehmen sollte und nicht Y etc.
Also Informationen auch sammeln und darauf auch meine Entscheidung zu stützen.
kbr hat geschrieben: Freitag 2. Juni 2023, 10:08
tommy_de hat geschrieben: Donnerstag 1. Juni 2023, 19:54 Allerdings beantwortet es noch nicht meine Hauptfrage, was am geeignetsten für mich wäre. Und ob ich alles auch ohne Problem mit Standard-Python machen kann.
Wenn du primär Datascience betreiben möchtest, dann könnte es sich anbieten, so anzufangen: Installiere miniconda und wechsel anschließend in die Konsole:

Code: Alles auswählen

$ conda create -n first_try python=3.10
$ conda activate first_try
$ conda install jupyterlab
$ jupyter lab
Nun hast du ein virtuelles environment ("first_try") angelegt, dieses aktiviert, jupyter lab mit Browser-basierter GUI gestartet und kannst nun mit einem Notebook anfangen – das ist ziemlich praktisch zum Experimentieren.

Später kannst Du noch pandas und was auch immer nachinstallieren. Und weitere Environments anlegen. Und vom Notebook zu einem Editor oder einer IDE wechseln, wenn du anders arbeiten möchtest. Es gibt nicht nur einen Weg zu arbeiten, sondern sehr viele Tools für den Umgang mit Python. Schlußendlich kommt es, wie so oft, darauf an, was du machen möchtest.
Danke! Das hilft mir sehr weiter. Denn ja, ich will in Richtung Data Science als erstes gehen :)
Ich habe mal das normale CPython deinstalliert/gelöscht und habe mir Miniconda installiert. Wie ich auch im Netz las, ist davon auch der Vorteil, dass es Abhängigkeiten erkennt.

Aber wie funktioniert das in der Praxis? Wenn ich Paket X in Version 3 habe und mir dann Paket Y in der aktuellsten Version installiere, sagt er mir dann, dass die nicht kompatibel zueinander sind oder wird dann Paket X automatisch angepasst mittels downgrade?

Und wie funktioniert es bei Miniconda mit dem Updaten oder Upgraden. Nicht auf die Pakte in den virtuellen Umgebungen bezogen, sondern auf die Installation. Ich las nur von „conda update conda“. Aber das updatet doch nur den Paketmanager Conda oder alles? Denn es ist in der base-Umgebung doch auch Python installiert. Oder muss man die alle per Hand updaten?

Dann noch eine Frage zu den Channels bei Conda: Ich las, dass Conda-Force empfohlen wird. Ist es empfehlenswert dies zu nutzen bzw. zu implementieren? Verstehe da noch nicht so ganz den Sinn dahinter.
Benutzeravatar
__blackjack__
User
Beiträge: 13004
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@tommy_de: Dir vorhandene Python-Installation hättest Du nicht zwingend deinstallieren müssen. Man kann mehrere Python-Installationen gleichzeitig auf dem System haben.

Was meinst Du mit Abhängigkeiten erkennen? Das macht ``pip`` ja auch. ``conda`` up- und donwgrades was nötig ist, damit alle Abhängigkeiten erfüllt sind.

Wenn Du alles updaten willst, dann ``conda update --all``. Keine Ahnung welche Auswirkungen das auf venvs hat wenn man das ausserhalb eines aktivierten venvs aufruft. Ich hoffe mal keine, denn das will man eigentlich in jedem venv separat machen oder auch gar nicht. Da können ja Sachen bei kaputt gehen weil der eigene Code Sachen macht, die nur mit bestimmten Versionen der Bibliotheken funktionieren. Kommt natürlich auch immer darauf an wie schlimm das ist wenn Code kaputt geht und gegebenenfalls nicht schnell reparierbar ist.

Die Channels sind zusätzliche Paketquellen in denen mehr und/oder neuere Pakete drin sein können.

Da können wir vielleicht auch noch mal zu Deiner Frage kommen, warum immer noch so viele Anaconda & Co nutzen: Das ist eine eigene Welt, mit eigenen Repositories.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
Antworten