installera Xcode (tillval)
Xcode krävs inte för att installera Homebrew och Python, men det krävs för vissa homebrew-paket. Om du kan spara Gigabyte, ladda ner den från App Store. Om inte, bör du kunna slutföra den här guiden utan det på MacOS Mojave. Ingen garanti för framtida versioner av MacOS.,
installera Xcode kommandoradsverktyg (krävs)
medan Xcode inte krävs är Xcode kommandoradsverktygen.
öppna en terminal och skriv följande kommando för att installera Xcode-kommandoradsverktyg som krävs för Homebrew:
xcode-select --install
om du använder MacOS Mojave måste du installera macOS-systemhuvudena., Detta krävs inte för Catalina.
sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
du blir tillfrågad om att ditt OSX-användarlösenord ska installera det här SDK-paketet som krävs.
om du väljer att inte installera Xcode måste du lägga till miljövariabeln SDKROOT
till ditt skal:
echo "export SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk" >> ~/.bash_profile
om du använder zsh, ändra slutet på det sista kommandot från~/.bash_profile till ~/.zshrc .
installera Homebrew
Homebrew är en pakethanterare för OSX. Vi använder den för att installera beroenden för att kompilera och installera python., (Obs! tidigare versioner av den här guiden använde Homebrew för att installera python, men det krävs inte. Vi använder pyenv för att installera python inom kort.
gå här:https://brew.sh/
följ anvisningarna för att installera Homebrew, som vid tidpunkten för detta skrivande är att klistra in den här raden i en terminal:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
installera pyenv
Nu när Homebrew är installerat kan du installera pyenv och de paket som krävs för att installera python.,
Installera pyenv:
brew install pyenv
Installera python obligatoriska paket:
brew install openssl readline sqlite3 xz zlib
Lägg till pyenv till ditt skal:
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
om du använder zsh, ändra slutet på det sista kommandot från ~/.bash_profile
till ~/.zshrc
.
(Valfritt) Du kan också brew install pyenv-virtualenv
för att lägga till virtualenv stöd till pyenv, men det är inte nödvändigt eftersom de flesta av de virtualenv arbete kommer du att göra med poetry
efter att vi installera den senare. Vissa människor gillarpyenv-virtualenv
stöd ändå.,
Installera Python med Homebrew
detta steg är valfritt eftersom vi aldrig kommer att använda denna python i ett projekt, men det rekommenderas av två skäl:
- Reason 1: Denna homebrew-installerade python blir ett säkerhetsnät om vi glömmer att byta till en pyenv-installerad python, kommer vi inte oavsiktligt förorena system python.
- Reason 2: Det blir en plats att installera globala paket med pipx., Detta gör att du kan växla mellan python-versioner på vilja med pyenv samtidigt som du behåller en konsekvent uppsättning globala verktyg som
flake8
ochblack
som alltid är tillgängliga och inte förorenar den globala python.
Installera senaste python 3.
# Install python 3.x
brew install python# Install pipx to manage global packages
python3 -m pip install --user pipx
python3 -m userpath append ~/.local/bin# Install global packages
python3 -m pipx install flake8
python3 -m pipx install black
Installera senaste python 2.7
(verkligen valfritt, bara för att skydda system python från misstag)
brew install python@2
om du väljer att installera python 2.,7, Du kommer aldrig att använda den (om du inte har någon äldre kod du behöver köra). Python 2.7 slutet av livet är i slutet av 2019. Se Python 2.7 end-of-life nedräkning. Det fungerar bara som ett säkerhetsnät för att skydda system python om du gör ett misstag.
Installera python!
äntligen! Dags att installera python…
låt oss börja med ett nytt skal. Stäng terminalen och öppna den igen för att säkerställa att pyenv har laddats.,
Du kan se en lista över tillgängliga python-versioner Med pyenv:
Välj en version och installera den:
pyenv install 3.7.3
ställ sedan in den som den globala python-versionen:
pyenv global 3.7.3
detta bör träda i kraft direkt. Kontrollera att du är på rätt python version:
$ python -V
Python 3.7.3
Grattis, du har python! Klart, eller hur?? Nepp.
installera poesi
poesi är en fantastisk python pakethanterare som förenklar beroendehantering, virtuell miljöhantering, och bygga och publicera python-kod.,
varför ska du använda poesi:
- föråldrade
virtualenv
,virtualenvwrapper
,pipenv
,setup.py
,requirements.txt
med mera. - bor utanför python, så du behöver inte installera det med
pip
eller oroa dig för paketkonflikter. - skiljer runtime beroenden som
requests
från utvecklingsberoenden sompytest
., - den använder den enkla och lättförståeliga
pypackage.toml
filen från pep-518 för att innehålla allt om projektet. - CLI-gränssnitt liknar välkända pakethanterare som
npm
ochyarn
.
Installera poesi enligt installationsguiden. Vid tidpunkten för detta skrivande, kör helt enkelt det här kommandot:
curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python
poesi skapar alla dina virtuella miljöer automatiskt på begäran i en enda katalog som standard., Om du föredrar dina virtuella miljöer att leva i samma katalog med koden (som en .venv
katalog i ditt projekt) kan du köra det här kommandot:
poetry config virtualenvs.in-project true
Läs mer om poesi
förhindra olyckor
nu lägger vi till några viktiga bitar i terminalmiljön för att säkerställa att allt fungerar tillsammans och fortsätter att bryta vår noggrant konstruerade pythonutvecklingsmiljö.
öppna filen~/.bash_profile
(eller~/.zshrc
för zsh)., Skapa den filen om den inte finns och se till att den har följande rader:
spara filen och stäng sedan och öppna terminalfönstret igen för att aktivera ändringarna.
Du har nu aktiverat pipx, pyenv, poesi och låst pip för att bara fungera i en virtuell miljö så att du inte av misstag kan installera python-paket till den globala python-miljön. Oroa dig inte, om du fortfarande vill installera ett python-paket globalt (det gör du inte!,) du kan använda gpip
eller gpip3
för att åsidosätta detta skydd och tvinga ett paket att installera globalt.
gå vidare!
du är nu redo att arbeta med python!
du behöver inte längre skapa virtuella miljöer eller skriva förvirrande boilerplate.,
skapa helt enkelt ett nytt python-projekt:
poetry new myproject
cd myproject
Bestäm om en python-version för detta projekt:
pyenv local 3.7.3
lägg sedan till beroenden i projektet, till exempel paketetrequests
:
poetry add requests
och dina utvecklingsberoende:
poetry add --dev pytest
en virtuell miljö skapas automatiskt med python-versionen du valde och de tillagda Python-paketen.
du behöver aldrig ange den här virtuella miljön. Inget mer .venv/bin/activate
eller deactivate
., Även om du kan om du vill. Du kan också skapa dina egna ohanterade virtuella miljöer genom att använda de senaste venv-funktionerna inbyggda i python 3 för att skapa dina virtuella miljöer. Använd inte virtualenv
.
för att köra ditt projekt i den virtuella miljön, gör något så här:
poetry run python myscript.py
eller skapa en scriptsektion i pyproject.py
för att göra entrypoint tillgänglig utanför den virtuella miljön.
se dokumentationen för kommandot Kör i poesi för olika sätt att köra dina python-projekt från CLI.
Njut!
Leave a Reply