Auswahlmöglichkeiten zum Erstellen einer Python-Entwicklungsumgebung auf einem M1-Mac (Apple Silicon)

Ich sehnte mich nach Apple-Silizium und kaufte mir ein M1 Macbook Air, aber das war ein ziemlicher Songwriter.Als Programmierumgebung / Entwicklungsumgebung sind Windows oder Intel Mac möglicherweise besser.Ich bin mit anderen Programmiersprachen nicht vertraut, daher weiß ich nicht,Hier ist eine Zusammenfassung möglicher Optionen für M1 Mac als Entwicklungsumgebung für Pyhon und wie man es baut.

Optionen für die Python-Entwicklungsumgebung auf dem M1-Mac

Eine kurze Umfrage zeigt, dass die folgenden drei die aktuellen (September 2021) Hauptoptionen sind.

  • Mit Homebrew installieren
  • Anaconda-Umgebung verwenden (Miniforge)
  • Docker verwenden

Der Grund, warum die Umgebungskonstruktion auf dem M1 Mac kompliziert ist, ist, dass Apple-Silizium im Gegensatz zur herkömmlichen Intel x86-Serie die ARM-Architektur als CPU-Architektur (Instruction System Design) verwendet.Wenn Sie den folgenden Artikel dazu lesen, können Sie sich ein Bild davon machen.

Tipps für IT-Ingenieure Was ist die CPU-Architektur?
Was unterscheidet einen Mac mit einem ARM-M1-Prozessor von der Intel-Version?

Python direkt mit Homebrew installieren

So installieren Sie Python mit dem Paketmanager "Homebrew" für macOS (oder Linux).

·Verdienst

Einfach zu installieren, da es das De-facto-Standardtool in der MacOS-Umgebung ist

·デメリット

Einige Python-Pakete sind mit der M1 Arm-Architektur kompatibel und einige funktionieren nur auf Rosetta.

Ich habe es nicht getan, aber das Folgende ist prägnanter.

Rosetta 2 ist eine Emulationssoftware, die es traditionellen Intel Mac-Binärdateien ermöglicht, auf Arm-basierten M1-Macs zu arbeiten.

Die schnellen Geheimnisse des Apple M2 bei der Untersuchung von Rosetta 1 gefunden

Anaconda-Umgebung verwenden (Miniforge)

Anaconda Ist eine Plattform, die eine Umgebung für Data Science bereitstellt.Wir stellen kompilierte Binärdateien vieler Module und Tools bereit, die sich auf wissenschaftliche Berechnungen konzentrieren, und Sie können ganz einfach eine Umgebung erstellen, die Python verwendet.

Miniconda für m1 mac (Minicon-Version von Anaconda: Referenz Vergleich von Anaconda und Miniconda) GabelMinischmiedeVerwendet wird.

·Verdienst

Einfache Umgebungskonstruktion und virtuelle Umgebungsverwaltung. arm nativ und schnell.
Sie müssen sich keine Sorgen um die M1-Unterstützung für Python-Pakete machen.

·デメリット

Wenn Sie pypi (pip) verwenden, um ein Paket einzufügen, das sich nicht im Conda-Repository befindet (kann nicht mit miniforge installiert werden), kann die Umgebung durch einen unerwarteten Konflikt zerstört werden und Sie müssen es möglicherweise neu installieren (Referenz: conda und pip: Mischgefahr)

Der folgende Artikel (+ Video) war dafür sehr hilfreich.

Was ist Minischmiede ...

Miniconda mit Fokus auf die Unterstützung verschiedener CPU-Architekturen (intel x86_64 und ppc64le, aarch1 inklusive Apple M64).

Docker verwenden

So erstellen Sie eine Python-Umgebung in einem Docker-Container.

·Verdienst

Wenn Sie für jede Umgebung einen Container erstellen, müssen Sie sich keine Sorgen um Kollisionen machen.
Sie müssen sich keine Sorgen um die M1-Unterstützung für Python-Pakete machen.

·デメリット

Docker-Lernkosten.Je nach Prozess ist es langsamer als die beiden oben genannten.

Die Methode ist hier zusammengefasst.

ま と め

In Wirklichkeit, "Verwenden Sie die Anaconda-Umgebung (Miniforge) "oder"Ich denke, es wird "Docker verwenden".Versuchen Sie es zuerst mit Miniforge, und wenn Sie Unannehmlichkeiten feststellen, beginnen Sie mit der Verwendung von Docker.Bitte lassen Sie es mich wissen, wenn es einen anderen besseren Weg gibt.

Wenn Sie nur den Code ausführen möchtenGoogle-KooperationEs gibt einige, aber ich habe es weggelassen, weil es nicht als Umgebungskonstruktion bezeichnet werden kann.