Opsi untuk membangun lingkungan pengembangan Python di M1 Mac (Apple Silicon)

Saya merindukan silikon Apple dan membeli M1 Macbook Air, tetapi ini cukup merepotkan.Sebagai lingkungan belajar dan pengembangan untuk pemrograman, Windows atau Intel mac mungkin lebih baik.Saya tidak terbiasa dengan bahasa pemrograman lain, jadi saya tidak tahu.Berikut adalah ringkasan kemungkinan pilihan dan metode konstruksi untuk M1 Mac sebagai lingkungan pengembangan Python.

Pilihan lingkungan pengembangan Python di M1 mac

Sekilas, tiga opsi berikut adalah opsi utama saat ini (September 2021).

  • Instal dengan Homebrew
  • Menggunakan lingkungan Anaconda (miniforge)
  • menggunakan Docker

Alasan mengapa lingkungan M1 Mac rumit adalah karena silikon Apple menggunakan arsitektur Arm sebagai arsitektur CPU (desain sistem instruksi), tidak seperti sistem intel x86 konvensional.Jika Anda membaca artikel di bawah ini tentang ini, Anda dapat memahami gambarnya.

Sedikit pengetahuan untuk insinyur IT Apa itu arsitektur CPU?
Apa perbedaan antara mac yang dilengkapi prosesor M1 versi ARM dan versi Intel?

Instal python langsung dengan Homebrew

Ini adalah cara menginstal python menggunakan manajer paket "Homebrew" untuk macOS (atau Linux).

·kemampuan

Ini adalah alat standar de facto di lingkungan MacOS, jadi mudah digunakan.

·デ メ リ ッ ト

Beberapa paket Python sudah kompatibel dengan arsitektur M1 Arm, sementara yang lain hanya bekerja di Rosetta.

Saya belum pernah melakukannya, tapi ini ringkasan singkatnya:

Rosetta 2 adalah perangkat lunak emulasi yang memungkinkan biner Intel Mac tradisional berjalan di Mac M1 berbasis Arm.

Rosetta 2 mengungkap rahasia di balik kecepatan Apple M1

Menggunakan lingkungan Anaconda (miniforge)

Anaconda adalah platform yang menyediakan lingkungan untuk ilmu data.Kami menyediakan file biner terkompilasi untuk banyak modul dan alat, terutama untuk kalkulasi ilmiah dan teknis, sehingga Anda dapat dengan mudah membangun lingkungan menggunakan Python.

Miniconda untuk m1 mac (versi konfigurasi minimum Anaconda: Referensi Membandingkan Anaconda dan Miniconda) adalah garpu daribengkel kecilDigunakan.

·kemampuan

Konstruksi lingkungan itu mudah, dan manajemen lingkungan virtual juga dimungkinkan. lengan asli dan cepat.
Jangan khawatir tentang kompatibilitas paket python M1.

·デ メ リ ッ ト

Jika Anda meletakkan paket yang tidak ada di repositori conda (tidak dapat diinstal dengan miniforge) dengan pypi (pip), tabrakan yang tidak terduga dapat merusak lingkungan dan memerlukan penginstalan ulang (Referensi: conda dan pip: jangan mencampurnya dengan berbahaya)

Artikel berikut (+ video) sangat membantu.

Apa itu miniforge?

Miniconda berfokus untuk mendukung berbagai arsitektur CPU (x86_64 dan ppc64le dari intel, aarch1 termasuk Apple M64).

menggunakan Docker

Ini adalah cara membuat lingkungan python di wadah Docker.

·kemampuan

Jika Anda membuat wadah untuk setiap lingkungan, Anda tidak perlu khawatir tentang tabrakan.
Jangan khawatir tentang kompatibilitas paket python M1.

·デ メ リ ッ ト

Biaya belajar Docker.Bergantung pada pemrosesannya, ini lebih lambat dari dua yang di atas.

Begini caranya.

Kesimpulan

Pada kenyataannya, "Gunakan lingkungan Anaconda (miniforge)" atau "Saya pikir itu akan "menggunakan Docker".Pertama, coba gunakan miniforge, dan jika Anda mengalami masalah, mulailah menggunakan Docker.Tolong beri tahu saya jika ada cara yang lebih baik.

jika Anda hanya menjalankan kodeGoogle KolaborasiAda juga, tapi saya hilangkan karena tidak bisa dikatakan konstruksi lingkungan.