Choix pour créer un environnement de développement Python sur M1 Mac (Apple Silicon)

J'avais envie de silicium Apple et j'ai acheté un Macbook Air M1, mais c'était tout un auteur-compositeur.En tant qu'environnement d'étude de programmation / développement, Windows ou Intel mac peut être meilleur.Je ne connais pas les autres langages de programmation donc je ne sais pas,Voici un résumé des options possibles pour M1 Mac en tant qu'environnement de développement pour Pyhon et comment le construire.

Choix d'environnement de développement Python sur mac M1

Une enquête rapide montre que les trois suivantes sont les principales options actuelles (septembre 2021).

  • Installer avec Homebrew
  • Utiliser l'environnement Anaconda (miniforge)
  • Utiliser Docker

La raison pour laquelle la construction de l'environnement sur M1 Mac est compliquée est que le silicium d'Apple utilise l'architecture Arm comme architecture CPU (conception du système d'instructions) contrairement à la série Intel x86 conventionnelle.Si vous lisez l'article ci-dessous à ce sujet, vous pouvez vous en faire une idée.

Conseils d'ingénieur informatique Qu'est-ce que l'architecture CPU ?
Qu'est-ce qui différencie un mac avec un processeur ARM M1 de la version Intel ?

Installer python directement avec Homebrew

Comment installer python à l'aide du gestionnaire de packages "Homebrew" pour macOS (ou Linux).

·mérite

Facile à installer car c'est l'outil standard de facto dans l'environnement MacOS

·デメリット

Certains packages Python sont compatibles avec l'architecture M1 Arm, et certains ne fonctionnent que sur Rosetta, vous devez donc vérifier chaque fois que vous installez le package, soyez donc prudent lorsque vous l'utilisez.

Je ne l'ai pas fait, mais ce qui suit est plus concis.

Rosetta 2 est un logiciel d'émulation qui permet aux binaires Intel Mac traditionnels de fonctionner sur les Mac M1 basés sur Arm.

Les secrets rapides de l'Apple M2 découverts en examinant Rosetta 1

Utiliser l'environnement Anaconda (miniforge)

Anaconda Est une plate-forme qui fournit un environnement pour la science des données.Nous fournissons des fichiers binaires compilés de nombreux modules et outils centrés sur des calculs scientifiques, et vous pouvez facilement créer un environnement utilisant Python.

Miniconda sur mac m1 (version Minicon d'Anaconda : Référence Comparaison d'Anaconda et de Miniconda) Fourchettemini-forgeを 使 い ま す.

·mérite

Construction facile de l'environnement et gestion de l'environnement virtuel. bras natif et rapide.
Vous n'avez pas à vous soucier de la prise en charge de M1 pour les packages python.

·デメリット

Si vous utilisez pypi (pip) pour insérer un package qui n'est pas dans le référentiel conda (ne peut pas être installé avec miniforge), l'environnement peut être détruit par un conflit inattendu et vous devrez peut-être le réinstaller (référence : conda et pip: Risque de mélange)

L'article suivant (+ vidéo) a été très utile pour cela.

Qu'est-ce que la miniforge...

Miniconda en mettant l'accent sur la prise en charge de diverses architectures de processeurs (intel x86_64 et ppc64le, aarch1, y compris Apple M64).

Utiliser Docker

Comment créer un environnement python sur un conteneur Docker.

·mérite

Si vous créez un conteneur pour chaque environnement, vous n'aurez pas à vous soucier des collisions.
Vous n'avez pas à vous soucier de la prise en charge de M1 pour les packages python.

·デメリット

Coûts d'apprentissage de Docker.Selon le processus, il est plus lent que les deux ci-dessus.

La méthode est résumée ici.

ま と め

En réalité, "Utiliser l'environnement Anaconda (miniforge) "ou"Je pense que ce sera "utiliser Docker".Essayez-le d'abord avec miniforge, et si vous rencontrez des problèmes, commencez à utiliser Docker.S'il vous plaît laissez-moi savoir s'il y a une autre meilleure façon.

Si vous voulez juste exécuter le codeColaboratoire GoogleIl y en a, mais je l'ai omis car on ne peut pas dire qu'il s'agit d'une construction environnementale.