So starten Sie das Python-Projekt im Jahr 2020 (Windows WSL und Mac Common)

Führen Sie eine moderne Linux-Python-Umgebung in Windows 10 mit dem gleichen Verfahren wie auf dem Mac ein.

Vor zwei Jahren unter Bezugnahme auf einen guten Artikel für Mac "Erste Schritte mit dem Python-Projekt im Jahr 2018", WSL (Windows Subsystem for) unter Windows 10 Vorbereitung einer modernen Linux-Python-Umgebung (zu dieser Zeit) unter Linux) (Artikel: Bereiten Sie eine moderne Python-Umgebung vor, indem Sie einen Befehl in etwa 10 Zeilen drücken ). Ich verwende die Umgebung nach dem Aktualisieren zu diesem Zeitpunkt immer noch, aber da ich Mac für Scala / Java-Geschäfte verwendet habe, habe ich beschlossen, sie zum Erstellen einer Python-Umgebung zu verwenden, die besser mit der Mac-Methode kompatibel ist. .. Zusammenfassend dachte ich, dass dieser Ansatz angesichts der Wartbarkeit definitiv möglich ist. Es ist ein universeller Ansatz, unabhängig von der Sprache. Selbst Anfänger, die in naher Zukunft Python und Javascript verwenden müssen, sollten sich der Herausforderung stellen, auch wenn sie Zeit haben.

Die diesjährige Politik

Die Verwendung von anyenv erfordert viel Arbeit, aber ich wollte die Version von nodejs usw. auf die gleiche Weise verwalten, also habe ich sie in Frage gestellt. Es scheint, dass es asdf als Option gibt, um eine vielfältigere Umgebung aufzubauen, aber ich frage mich, ob dies etwa zwei Jahre nach dem Verfall angenommen wird.

(Bonus) Übrigens, machen Sie die vscode-Umgebung für win / mac üblich.

Persönlich ist die große Veränderung gegenüber vor zwei Jahren, dass das Verhältnis der Verwendung von vscode gestiegen ist. ... Vorher habe ich Sublimetext verwendet, weil ich mit Milliarden von Zeilen Textdateien umgehen musste. Heutzutage ist vscode sowohl für Mac- als auch für Windows-Editoren in Ordnung. Also habe ich den folgenden Artikel geschrieben. Wenn Sie vscode + python sind, schauen Sie bitte auch hier. Mit Windows 10 (wsl + vscode + homebrew) können Sie problemlos eine Umgebung in der Nähe von Mac realisieren

Vorgehensweise mit WSL-Version Ubuntu

Es gibt nur wenige Befehlszeilenunterschiede zwischen Mac und Windows WSL (Ubuntu). Vor kurzem funktioniert die window10-Maschine meines persönlichen PCs nicht gut und ich stehe kurz vor dem Tod. Als ich meinen persönlichen PC auf Mac stellte, dachte ich, ich würde den Unterschied auf Mac schreiben.

① Homebrew eingeführt

Homebrew kann einfach in der WSL-Version von Ubuntu installiert werden. Unten die Installationsprozedur für Ubuntu im Ausgangszustand

.sh


sudo apt update
sudo apt upgrade
sudo apt install linuxbrew-wrapper build-essential
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
echo 'eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)' >> ~/.bashrc
source ~/.bashrc

② Stellen Sie anyenv vor

Ab hier ist das Verfahren fast das gleiche wie für Mac. Vielen Dank. Schließen Sie beliebige und beliebige Komfortstecker ein. Einige Plugins werden für pyenv nicht benötigt, aber seien Sie auf Tage vorbereitet, an denen Sie andere Sprachen verwenden.

brew install anyenv
anyenv init
echo 'eval "$(anyenv init -)"' >> ~/.bashrc
exec $SHELL -l
anyenv install --init
anyenv -v
mkdir -p $(anyenv root)/plugins
git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update
git clone https://github.com/znz/anyenv-git.git $(anyenv root)/plugins/anyenv-git
anyenv update

③ Führen Sie Pyenv / Python / Poesie ein

Es gibt auch einige Ubuntu-spezifische Schritte für die WSL-Version. Ich klicke jedoch einfach auf den folgenden Befehl. Wenn sich die Version von Ubuntu ändert, kann sich die Prozedur ändern. In diesem Fall geben wir unser Bestes, indem wir mit einem der Schlüsselwörter "pyenv / ubuntu / poet" googeln. In dem Artikel vor zwei Jahren hat sich das Verfahren etwa alle sechs Monate geringfügig geändert, und ich habe den Artikel aktualisiert. Daher werde ich ihn diesmal mit der gleichen Häufigkeit überprüfen und diesen Artikel entsprechend aktualisieren (ich habe das Gefühl, dass ich nicht viel schreibe). ..

.sh


anyenv install pyenv
exec $SHELL -l
sudo apt-get install -y libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev
pyenv install 3.8.2
pyenv global 3.8.2
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python
source $HOME/.poetry/env

Am Ende

Nach der Installation

Es sollte so aussehen.

userid@DESKTOP-YourID:~$ poetry
Poetry version 1.0.5

USAGE
  poetry [-h] [-q] [-v [<...>]] [-V] [--ansi] [--no-ansi] [-n] <command> [<arg1>] ... [<argN>]

ARGUMENTS
  <command>              The command to execute
  <arg>                  The arguments of the command

GLOBAL OPTIONS
  -h (--help)            Display this help message
  -q (--quiet)           Do not output any message
  -v (--verbose)         Increase the verbosity of messages: "-v" for normal output, "-vv" for more verbose output and "-vvv" for debug
  -V (--version)         Display this application version
  --ansi                 Force ANSI output
  --no-ansi              Disable ANSI output
  -n (--no-interaction)  Do not ask any interactive question

AVAILABLE COMMANDS
  about                  Shows information about Poetry.
  add                    Adds a new dependency to pyproject.toml.
  build                  Builds a package, as a tarball and a wheel by default.
  cache                  Interact with Poetry's cache
  check                  Checks the validity of the pyproject.toml file.
  config                 Manages configuration settings.
  debug                  Debug various elements of Poetry.
  env                    Interact with Poetry's project environments.
  export                 Exports the lock file to alternative formats.
  help                   Display the manual of a command
  init                   Creates a basic pyproject.toml file in the current directory.
  install                Installs the project dependencies.
  lock                   Locks the project dependencies.
  new                    Creates a new Python project at <path>.
  publish                Publishes a package to a remote repository.
  remove                 Removes a package from the project dependencies.
  run                    Runs a command in the appropriate environment.
  search                 Searches for packages on remote repositories.
  self                   Interact with Poetry directly.
  shell                  Spawns a shell within the virtual environment.
  show                   Shows information about packages.
  update                 Update the dependencies as according to the pyproject.toml file.
  version                Shows the version of the project or bumps it when a valid bump rule is provided.

userid@DESKTOP-YourID:~$ python
Python 3.8.2 (default, Apr  4 2020, 23:48:47)
[GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

Ich habe Nodejs zusätzlich zu Python auf meinem PC installiert, aber es ist sauber beim Brauen (Hugo wurde separat eingeführt, um ein Blog zu erstellen). Ich denke, das ist ein guter Punkt dieser Methode.

$ brew list
anyenv  hugo  patchelf

Wie man Poesie für Paketmanagement-Tools studiert

Das offizielle Dokument wurde ins Japanische übersetzt (siehe unten), daher scheint es gut, hier zu beginnen. https://cocoatomo.github.io/poetry-ja/basic-usage/

Verwenden wir gegebenenfalls auch Winpython (eine tragbare Version wird empfohlen).

Es ist wichtig, die Version von Pyhon und Paketen nach dem hier beschriebenen Verfahren zu verwalten, z. B. bei Verwendung von Python in der Webentwicklung mit enger Lieferzeit, wenn auch nur ein Paket nicht funktioniert. Für Data Engineer / Data Science-Projekte ist eine Verbindung zu einer eher festgelegten (häufig älteren) Datenbank erforderlich. Beim Herstellen einer Verbindung zu einer älteren Datenbank ist die Linux-Version des Treibers möglicherweise nicht möglich. Wenn pyenv auf wsl abgeschlossen ist, ist die Koexistenz mit winpython natürlich kein Problem. Verwenden wir Winpython, um die Option der Datenbankverbindung über ODBC zu sichern. Mit der tragbaren Version besteht keine Sorge, dass die Umgebung schmutzig wird. Mit Python allein kann Winpython, das auch Anaconda und Pandas / Numpy ohne Erlaubnis einführt, am stärksten sein. Wenn es jedoch darum geht, über die Shell mit anderen Tools zu verknüpfen, möchte ich immer noch ein wsl pyenv.

[Bonus] Gleiches gilt für das Versionsmanagement von nodejs.

Wenn Sie dieses Verfahren befolgen, können Sie die Version von nodejs einfach verwalten. Führen Sie die folgenden Schritte aus, um die aktuellste Version von nodejs zu installieren.

anyenv install nodenv
exec $SHELL -l
touch $(nodenv root)/default-packages
nodenv install 13.2.0
nodenv global 13.12.0

Sie können die Version mit node -v überprüfen.

Recommended Posts

So starten Sie das Python-Projekt im Jahr 2020 (Windows WSL und Mac Common)
Erste Schritte mit Python
So ermitteln Sie mit Python den Unterschied zwischen Datum und Uhrzeit in Sekunden
Link, um mit Python zu beginnen
So erhalten Sie die Python-Version
Wie fange ich mit Scrapy an?
Wie fange ich mit Django an?
Mindestkenntnisse, um mit dem Python-Protokollierungsmodul zu beginnen
So gelangen Sie mit Vagrant in die Python-Entwicklungsumgebung
[Einführung in Python] So erhalten Sie Daten mit der Funktion listdir
Führen Sie das Programm aus, ohne eine Python-Umgebung zu erstellen! !! (Erste Schritte mit Google Colaboratory)
Erste Schritte mit dem Python-Framework Django unter Mac OS X.
So erhalten Sie mithilfe der Mastodon-API Follower und Follower von Python
[Python] So erhalten Sie den ersten und den letzten Tag des Monats
Wie Python-Anfänger mit Progete beginnen
[Python Kivy] So erhalten Sie den Dateipfad durch Ziehen und Ablegen
Setzen Sie Cabocha 0.68 in Windows ein und versuchen Sie, die Abhängigkeit mit Python zu analysieren
Der einfachste Weg, um mit Django zu beginnen
So erhalten Sie die Dateien im Ordner [Python]
Zubu Amateur will Python starten
Für diejenigen, die Excel VBA lernen und mit Python beginnen möchten
Hinweis: So erhalten Sie den letzten Tag des Monats mit Python (hinzugefügt am ersten Tag des Monats)
So erhalten Sie mit Python eine Liste der Dateien im selben Verzeichnis
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung
So erhalten Sie den Variablennamen selbst in Python
So ermitteln Sie die Anzahl der Stellen in Python
[Einführung in Python] Wie iteriere ich mit der Bereichsfunktion?
Ich habe versucht, mit Blenders Python script_Part 01 zu beginnen
[Python] So legen Sie den Download-Speicherort mit youtube-dl fest
Freigeben von Ordnern für Docker und Windows mit Tensorflow
Ich habe versucht, mit Blenders Python script_Part 02 zu beginnen
Wie man mit Python-Flüchen ein Urteil über das Mausrad erhält
[Python] So schreiben Sie den Tabellenstil mit python-pptx um [python-pptx]
So installieren Sie Python [Windows]
Erste Schritte mit Visual Studio Online ~ Das Ende der Ära der Umgebungskonstruktion ~
Beginnen Sie mit Python! ~ ② Grammatik ~
So legen Sie die Entwicklungsumgebung für jedes Projekt mit VSCode + Python-Erweiterung + Miniconda fest
Ich habe versucht zu simulieren, wie sich die Infektion mit Python ausbreitet
[Python] Wie man mit Klassenvariablen mit Dekorator und Metaklasse spielt
So erhalten Sie den letzten (letzten) Wert in einer Liste in Python
So erhalten Sie alle Schlüssel und Werte im Wörterbuch
Holen Sie sich zusätzliche Daten zu LDAP mit Python (Writer und Reader)
So melden Sie sich mit Python bei AtCoder an und senden automatisch
Holen Sie sich die Quelle der Seite unbegrenzt mit Python zu laden.
Verwenden Sie Python, um Windows und Mac zu überwachen und Informationen zu den Apps zu sammeln, an denen Sie arbeiten
Wie man mit dem Phänomen umgeht, dass Python (Jupyter Notebook) auf WSL ausgeführt wird, wird abgebrochen
Rufen Sie die Excel-Liste rekursiv in einem bestimmten Ordner mit Python ab und schreiben Sie sie in Excel.
[Python / Ruby] Mit Code verstehen Wie man Daten aus dem Internet abruft und in CSV schreibt
So erhalten Sie Informationen von Organisationen, Cost Explorer eines anderen AWS-Kontos bei Lambda (Python)
Python: So verwenden Sie Async mit
Beginnen Sie mit Python! ~ ① Umweltbau ~
Python 3.6 unter Windows ... und zu Xamarin.
Holen Sie sich das Wetter mit Python-Anfragen
Holen Sie sich das Wetter mit Python-Anfragen 2