Instalacja pakietów w Pythonie (2024)

Instalacja pakietów w Pythonie (1)

Cześć! To jest fragment książki Python od podstaw, która ma pomóc w nauce programowania od zera. Znajdziesz ją na Allegro, w Empikach i w księgarniach internetowych.

Python był tworzony irozwijany przez pasjonatów, zafascynowanych tym językiem ichcących działać na jego rzecz. Z czasem powstała cała społeczność ludzi, nazywana Python community. Poza językiem stworzyli oni szereg narzędzi, wtym takie dołatwej wymiany pakietami.

PyPI

Tak też powstała centralna baza pakietów PyPI1 (Python Package Index). Możesz sobie wyobrazić, że jest to wielki dysk, na który twórcy przesyłają pakiety, aużytkownicy je z niego pobierają. Gdy potrzebujesz znaleźć jakiś pakiet, wszystkie są widoczne iopisane na stronie pypi.org.

PyPI ma swoją wyszukiwarkę oraz ogromną liczbę opcji filtrowania wyników. Osobiście jednak rzadko z niej korzystam. Wiele wyników dotyczy mało popularnych pakietów. Znacznie częściej odnajduję sugerowane pakiety na StackOverflow, blogach czy forach, ana PyPI sprawdzam ich użycie idokumentację (opis działania).

Instalacja pakietów w Pythonie (2)

Strona centralnego repozytorium pakietów pypi.org.

Instalacja pakietów w Pythonie (3)

Opis pakietu fastly wwersji 0.5.1.

Pip

Jak już wspominałem o pobieraniu pakietu, to służy dotego kolejne narzędzie o nazwie pip3. Jest to system dozarządzania pakietami, czyli program, który umożliwia pobieranie, usuwanie czy zmianę wersji pakietów. Wystarczy go poinstruować, co ma pobrać, aon sam się już tym zajmie.

Pip jest domyślnie instalowany razem z językiem Python. Może się jednak zdarzyć, że na komputerze jest zainstalowany Python, apip nie. Zacznijmy więc od sprawdzenia, czy u Ciebie pip jest już zainstalowany. Otwórz wiersz poleceń4 (Terminal wprzypadku MacOS lub Linux), poczym wpisz "pip --version". Jeśli program jest u Ciebie zainstalowany, to wyświetli się wersja programu. Jeśli nie, to zobaczysz błąd wynikający z odniesienia się doprogramu, który nie istnieje.

Aby zainstalować pip, wejdź na stronę https://bootstrap.pypa.io/get-pip.py ipobierz ten plik (kliknij prawym przyciskiem myszy iwybierz "Zapisz jako") wmiejscu, gdzie otwarty jest wiersz poleceń5. Będzie się on nazywał "get-pip.py".

Instalacja pakietów w Pythonie (5)

Następnie uruchom ten plik przy użyciu Pythona, czyli wywołaj "python get-pip.py". Po tym wyłącz iwłącz wiersz poleceń, poczym ponowie wpisz "pip --version". Jeśli wciąż komenda ta nie podaje poprawnie wersji, wpisz "pip3 --version". Dodatkowa trójka oznacza, że pip został zainstalowany dla Pythona wwersji trzeciej. W takim wypadku, przy następnych krokach instalacji pakietów używaj "pip3" zamiast "pip".

Instalacja pakietów w Pythonie (6)

Jeśli podrodze coś poszło nie tak, powtórz wszystkie kroki instalacji języka z rozdziału Pierwszy program, anastępnie instalacji pip6.

Instalacja pakietów z pip

Aby zainstalować pakiet przy użyciu pip, wywołaj wWierszu poleceń (albo Terminalu) komendę "pip install {nazwa pakietu}" (lub "pip3 install {nazwa pakietu}"). Nazwę pakietu wpisujemy małymi literami.

Instalacja pakietów w Pythonie (7)

Zauważ, że komenda dozainstalowania pakietu jest wyszczególniona na stronie PyPI. Poniżej zaznaczona jest metoda dozainstalowania pakietu "fastly".

Instalacja pakietów w Pythonie (8)

Instalacja pakietów w PyCharm

Jeśli korzystamy z PyCharm, zarządzanie pakietami jest znacznie łatwiejsze. Wystarczy otworzyć ustawienia (File > Preferences), poczym wybrać zakładkę "Project {nazwa projektu} > Python Interpreter".

Dla używanego wprojekcie interpretera Python (możemy mieć na komputerze zainstalowanych kilka), zobaczymy listę zainstalowanych pakietów wraz z ich wersjami. Tą listą możemy łatwo zarządzać przy użyciu plusa iminusa. Minusem usuwamy dany pakiet. Plusem możemy zainstalować nowy. Po jego użyciu wyświetla się wyszukiwarka pakietów. Po znalezieniu pakietu instalujemy go przyciskiem Install Package.

Instalacja pakietów w Pythonie (10)

W PyCharm jest jeszcze jedna sztuczka, której często używam. Załóżmy, że poszukujesz winternecie kodu, dowykonania danej operacji. Odnajdujesz go ikopiujesz dopliku Python wPyCharm. Jeśli wkodzie tym wykorzystywany jest pakiet, którego nie masz zainstalowanego, to przy jego importowaniu zaznaczony zostanie błąd. Jeśli ustawisz tam kursor, poczym wciśniesz Alt+Enter (command+Enter na MacOS)7, to zobaczysz sugestię zainstalowania tego pakietu. Zaakceptuj ją poprzez Enter, aPyCharm już zajmie się resztą.

Instalacja pakietów w Pythonie (11)

Wersjonowanie

Wielokrotnie wspominałem już o wersjach. Czy to wersjach Pythona, pip, czy pakietów. Po co te wersje? Dobrą metaforą jest tutaj książka. Pierwsze wydanie to pierwsza wersja. Po jakimś czasie autor postanawia wprowadzić jakieś zmiany ipowstaje wersja druga. Potem trzecia, czwarta itp. Podobnie jest z oprogramowaniem, ale ponieważ znacznie łatwiej jest dostarczać zmiany dooprogramowania niż doksiążki, wersji jest zazwyczaj znacznie więcej.

Wersja wprogramowaniu jest najczęściej opisywana wsystemie nazywanym Semantic versioning. Zawiera on trzy części oddzielone kropkami: Major, Minor iPatch. Domyślnie pierwsza wersja gotowa doużytku to "1.0.0", apierwsza stworzona na potrzeby demonstracyjne to "0.0.1". Gdy wydajemy nową wersję, zwiększamy jeden z członów zgodnie z następującym kluczem:

  • Major — zwiększamy, gdy nastąpiły bardzo istotne zmiany, które sprawiają, że kod napisany dla poprzedniej wersji z dużym prawdopodobieństwem nie zadziała. Przy zwiększeniu, zerujemy części Minor iPatch.
  • Minor — zwiększamy, gdy nastąpiły zmiany, które sprawiają, że kod napisany dla poprzedniej wersji zadziała wnieco inny sposób niż poprzednio. Możemy też oznaczyć pewne elementy jako depricated (czyli, że nie należy ich używać) lub usunąć elementy będące depricated (co również sprawia, że część programów korzystających z poprzednich wersji może nie zadziałać). Przy zwiększeniu, zerujemy część Patch.
  • Patch — zwiększamy, gdy dokonujemy nieznacznych zmian, które nie powinny wpłynąć na używanie naszego pakietu.

Instalacja pakietów w Pythonie (12)

Przykład wersji zapisanej wsystemie Semantic versioning, z podpisanymi członami MAJOR, Minor ipatch.

Instalacja pakietów w Pythonie (13)

Wersjonowanie jest bardzo ważne. Wyobraź sobie, że stworzyłeś/stworzyłaś program, który działa dla pakietu wwersji "1.2.3". Działa on doskonale, ale wtedy wychodzi wersja "2.0.0" tego pakietu. Niestety udostępniane przez niego funkcje są zupełnie inne, przez co Twój kod przestanie działać. Możesz oczywiście dostosować swój kod, ale to wymaga dodatkowej pracy. Chcesz to zrobić wswoim czasie, anie wtedy, gdy wychodzi nowa wersja pakietu. Dlatego właśnie PyPI przechowuje nie tylko ostatnią wersję pakietu, ale także wszystkie poprzednie. My zaś możemy wybrać jaką wersję pakietu chcemy pobrać. Przy pobieraniu przez pip, określamy ją popodwójnym znaku równości, np. "pip install {nazwa pakietu}=={wersja}" (lub "pip3 install {nazwa pakietu}=={wersja}").

Kiedy naprawdę duże projekty są napisane pod konkretną wersję pakietu, dostosowanie się donowej wersji może być tak kosztowne, że nie chcą się na to zdecydować. Do takiej sytuacji doszło wwielu miejscach z samą wersją języka Python. Kiedy została wprowadzona wersja trzecia, wiele programów zdecydowało się pozostać przy wersji drugiej. Powstał wewnętrzny rozłam, który jest bardzo problematyczny dla całego środowiska. Kod prezentowany na forach czy kursach działać będzie zazwyczaj tylko wjednej z tych wersji. Podobnie pakiety są dostosowane dojednej lub drugiej. Wersja trzecia właściwie stała się już standardem, ale wygląda na to, że szybko nie zapomnimy jeszcze o wersji drugiej.

Zakończenie

Kiedy potrafimy już instalować pakiety ikorzystać z języka Python, to świat programowania stoi przed nami otworem. Mnogość pakietów pozwala na wykonywanie skomplikowanych operacji wzaledwie kilku liniach kodu. O tym jednak lepiej przekonasz się wrozdziale czwartym.

1:

Wiele programów ipakietów określa, które ich litery powinny być wielkie, aktóre małe. Staram się to zawsze respektować. Dlatego piszę PyPI, anie Pypi. Także pip pisany jest z małych liter, mimo iż jest nazwą własną, chyba że powinien być pisany wielką literą z innego powodu.

3:

Nazwa pip to skrót od "Pip Installs Packages". Zauważyłeś, że rozwinięcie skrótu zawiera skrót sam w sobie? Jest to więc tzw. skrót rekurencyjny. Sporo takich skrótów funkcjonuje w świecie programowania. Uważamy je za zabawne, a że Python był rozwijany przez pasjonatów, którym nikt za to nie płacił, w różnych miejscach można znaleźć przeróżne smaczki. Aby znaleźć kolejny ze smaczków, wpisz "import this" w Python REPL.

4:

Opisałem jak to zrobić wrozdziale Pierwszy program.

5:

Zamiast tego, możemy oczywiście przejść wwierszu poleceń wmiejsce, gdzie zapisaliśmy plik. Jest on nieco jak Menedżer plików, czyli program, który uruchamia się, gdy otworzysz "Mój komputer". Jest on otwarty w konkretnym miejscu i tam możesz otwierać pliki lub zmieniać ich nazwy itp. W Menadżerze plików sprawdzamy, jakie są pliki i foldery w miejscu, w którym się znajdujemy, poprzez komendę "dir" (w Terminalu poprzez "ls"). Przechodzimy do folderu poprzez "cd {nazwa folderu}". Aby się cofnąć do folderu, w którym znajduje się aktualny folder, używamy "cd ..". Po wpisaniu "cd" i naciśnięciu Tab zobaczysz listę podpowiedzi. Zacznij wpisywać nazwę i wciśnij Tab, a zobaczysz tylko foldery pasujące do tego, co już wpisane. Jak jest już tylko jedna możliwość, to zostanie ona automatycznie wpisana do końca. Tak przemieszczamy się po folderach w terminalu.

6:

Niestety jest wiele rzeczy, które mogły pójść nie tak. Wyjaśnianie ich kolejno zajęłoby całą książkę i wymagałoby wejścia wwiele aspektów działania systemów operacyjnych. Na szczęście na każdy problem znajdziesz odpowiedzi winternecie. Jeśli jednak nie masz doświadczenia wtego typu operacjach, polecam poszukać pomocy u osoby, która je ma.

7:

Ten skrót pokazuje sugestie kontekstowe. Śmiało używaj go przy wszelkich ostrzeżeniach (żółte podkreślenie) ibłędach (czerwone podkreślenie), gdyż często zawiera dobre sugestie automatycznego rozwiązania problemu.

Instalacja pakietów w Pythonie (2024)
Top Articles
Binary Definition
2FA vs MFA: What’s the Difference?
Mickey Moniak Walk Up Song
St Thomas Usvi Craigslist
This website is unavailable in your location. – WSB-TV Channel 2 - Atlanta
The UPS Store | Ship & Print Here > 400 West Broadway
Voordelige mode in topkwaliteit shoppen
Kris Carolla Obituary
41 annonces BMW Z3 occasion - ParuVendu.fr
Whiskeytown Camera
My Vidant Chart
My.doculivery.com/Crowncork
Pollen Count Los Altos
Bme Flowchart Psu
DIN 41612 - FCI - PDF Catalogs | Technical Documentation
Nashville Predators Wiki
Gma Deals And Steals Today 2022
Find Such That The Following Matrix Is Singular.
Cyndaquil Gen 4 Learnset
Pizza Hut In Dinuba
List of all the Castle's Secret Stars - Super Mario 64 Guide - IGN
Indiana Wesleyan Transcripts
Closest Bj Near Me
Iroquois Amphitheater Louisville Ky Seating Chart
Amortization Calculator
Sullivan County Image Mate
Spn 520211
Garnish For Shrimp Taco Nyt
The Many Faces of the Craigslist Killer
Airline Reception Meaning
Accuradio Unblocked
Wrights Camper & Auto Sales Llc
30+ useful Dutch apps for new expats in the Netherlands
Myaci Benefits Albertsons
Martin Village Stm 16 & Imax
Tamil Play.com
2012 Street Glide Blue Book Value
Cross-Border Share Swaps Made Easier Through Amendments to India’s Foreign Exchange Regulations - Transatlantic Law International
To Give A Guarantee Promise Figgerits
Go Smiles Herndon Reviews
Orion Nebula: Facts about Earth’s nearest stellar nursery
Citibank Branch Locations In Orlando Florida
Lovely Nails Prices (2024) – Salon Rates
Oppenheimer Showtimes Near B&B Theatres Liberty Cinema 12
Blue Beetle Showtimes Near Regal Evergreen Parkway & Rpx
How to Connect Jabra Earbuds to an iPhone | Decortweaks
Leland Westerlund
Sapphire Pine Grove
De boeken van Val McDermid op volgorde
Runescape Death Guard
Yoshidakins
Equinox Great Neck Class Schedule
Latest Posts
Article information

Author: Tuan Roob DDS

Last Updated:

Views: 5923

Rating: 4.1 / 5 (62 voted)

Reviews: 93% of readers found this page helpful

Author information

Name: Tuan Roob DDS

Birthday: 1999-11-20

Address: Suite 592 642 Pfannerstill Island, South Keila, LA 74970-3076

Phone: +9617721773649

Job: Marketing Producer

Hobby: Skydiving, Flag Football, Knitting, Running, Lego building, Hunting, Juggling

Introduction: My name is Tuan Roob DDS, I am a friendly, good, energetic, faithful, fantastic, gentle, enchanting person who loves writing and wants to share my knowledge and understanding with you.