Wróć do informacji o e-podręczniku Wydrukuj Pobierz materiał do PDF Pobierz materiał do EPUB Pobierz materiał do MOBI Zaloguj się, aby dodać do ulubionych Zaloguj się, aby skopiować i edytować materiał Zaloguj się, aby udostępnić materiał Zaloguj się, aby dodać całą stronę do teczki

Na temat powstania języka Python Guido van Rossum napisał:

Guido van Rossum

W grudniu roku, szukałem hobbistycznego projektu programistycznego, który wypełniłby mi czas w przedświątecznym tygodniu. Moje biuro miało być zamknięte, ale dysponowałem domowym komputerem. Zdecydowałem się więc napisać interpreter nowego języka skryptowego, który zaprzątał mi wówczas myśli: wyobrażałem sobie pochodną języka ABC, przemawiającą do hakerów Uniksa i C. Jako roboczą nazwę wybrałem „Python” – jestem bowiem wielkim fanem „Latającego Cyrku Monty Pythona”.

cytat1 Źródło: Guido van Rossum. Cytat za: Mark Lutz, Wprowadzenie do Programming Python, wyd. O'Reilly.

Python znalazł zastosowanie między innymi w:

  • serwisie YouTube – do zarządzania platformą wykorzystuje się skrypty napisane w Pythonie,

  • serwisach Dropbox, Instagram, Spotify, Reddit – powstały one przy użyciu języka Python,

  • ponad projektach prowadzonych przez agencję NASA; należy do nich APOD (Astronomy Picture of a Day) – mikroserwis udostępniający różne zdjęcia.

Python: ewolucja języka i zasady licencjonowania napisanych w nim programów

Pierwsza wersja języka Python powstała w latach dziewięćdziesiątych ubiegłego wieku. Jednak pomimo upływu czasu Python jest projektem ciągle rozwijanym przez społeczność programistów całego świata.

Dla zainteresowanych

Polacy mają swój udział w rozwoju języka Python. W wersjach Release Managerem jest Łukasz Langa.

Rozwijanie języka Python odbywa się z wykorzystaniem tzw. dokumentów PEPPEPPEP (Python Enhancement Proposal). Są to wnoszone przez programistów sugestie zmian w języku. PEP zawiera opis proponowanych modyfikacji języka, ich uzasadnienie (Rationale) oraz aktualny status. W momencie, kiedy wszyscy dyskutujący osiągną kompromis co do zmian, są one przyjmowane i włączane do standardu Pythona.

R1PlSaazcMcOI1
LOGO licencji GPL
Źródło: licencja: CC BY-ND 4.0.

Czy wolno sprzedawać programy napisane w języku Python? Odpowiedź brzmi: tak. Licencja Pythona jest zmodyfikowaną licencją GPLlicencja GPLlicencją GPL, która pozwala tworzyć i sprzedawać aplikacje komercyjne.

Licencja
Definicja: Licencja

Licencja oprogramowania jest umową między użytkownikiem a osobą (firmą), której przysługują prawa autorskie lub majątkowe do dzieła. Licencja opisuje sposób, w jaki użytkownikowi wolno korzystać z oprogramowania.

Dla zainteresowanych

Autorzy oprogramowania rozpowszechnianego na zasadach open source (w szczególności licencja GPLlicencja GPLGPL) przekazują użytkownikowi cztery zasady/reguły (zwane także swobodami lub wolnościami):

  • zasada : swoboda uruchamiania programu w dowolnym celu,

  • zasada : prawo do analizowania programu oraz dostosowywania go do własnych potrzeb,

  • zasada : prawo do rozpowszechniania kopii programu,

  • zasada : swoboda w dziedzinie udoskonalania (samodzielnego modyfikowania!) programu i rozpowszechniania własnych ulepszeń; w rezultacie korzysta z nich cała społeczność przestrzegająca zasad open source.

Zasady te opisane są dokładnie na stronie projektu GNU.

IDE – środowiska do pisania programów

Podczas pisania aplikacji wykorzystywane są specjalne edytory kodu (środowiska IDEIDEśrodowiska IDE). Python oddaje do dyspozycji programisty IDLE – proste, towarzyszące interpreterowi języka środowisko uruchomieniowe. IDLE jest jednym z narzędzi dopuszczonych do używania podczas egzaminu maturalnego z informatyki.

Istnieje również zaawansowane środowisko o nazwie PyCharm, które jest produktem firmy JetBrains. Jest ono wykorzystywane przez zaawansowanych programistów. Dostępne są dwie wersje opisywanego środowiska:

  • Community – darmowa edycja typu open source (rozpowszechniana na licencji GPLlicencja GPLlicencji GPL)

  • Professional – odmiana komercyjna (płatna); wspomaga ona tworzenie projektów wykorzystujących frameworki DjangoFlask.

PyCharm jest jednym z narzędzi dopuszczonych do używania podczas egzaminu maturalnego z informatyki.

Dla zainteresowanych

PyCharm obsługuje m.in. formaty JSON, XML, Markdown.

Sposoby instalacji Pythona w różnych systemach operacyjnych

LinuxLinuxLinux – w tym przypadku Python jest dostępny od razu, choć czasami bez IDLE. Środowisko to można zainstalować za pomocą graficznych narzędzi (takich jak Centrum oprogramowania) lub wydając komendy:

sudo aptaptapt install idle-pythonX.Y – (Debian/Ubuntu/Mint/Zorin - gdzie X.Y oznacza wersję Pythona, która jest dostępna w systemie)

sudo yum install python3‑idle – (RedHat/CentOS)

MacOSMacOSMacOS – należy skorzystać z instalatora na stronie python.org (zainstalowany zostanie Python oraz IDLE)

WindowsMicrosoft WindowsWindows – korzysta się z instalatora na stronie python.org (zainstalowany zostanie Python oraz IDLE)

Środowisko IDLE zgłasza się jako SHELLshellSHELL, zwany też REPLREPLREPL. Jest to podstawowy tryb pracy. Można wpisać w nim pierwsze polecenie w języku Python:

Linia 1. print otwórz nawias okrągły cudzysłów Niech Moc będzie z tobą kropka cudzysłów zamknij nawias okrągły.

W takim trybie trudno jest napisać duży program, który składa się z kilkudziesięciu poleceń.

1
Przykład 1

W IDLE można przygotować aplikację złożoną z wielu poleceń. Napiszemy teraz program, który wyświetli kilka linijek tekstu. W tym celu wybieramy opcję File | New File i w wyświetlonym oknie wpisujemy kilka komend, na przykład:

Linia 1. print otwórz nawias okrągły cudzysłów Niech Moc będzie z tobą kropka cudzysłów zamknij nawias okrągły. Linia 2. print otwórz nawias okrągły cudzysłów Zagraj to jeszcze raz przecinek Sam kropka Zagraj dwukropek Jak mija czas kropka cudzysłów zamknij nawias okrągły. Linia 3. print otwórz nawias okrągły cudzysłów Będzie potrzebna większa łódź kropka cudzysłów zamknij nawias okrągły.

Później zapisujemy plik (np. pod nazwą cytaty_kino.py). Wydajemy w tym celu polecenie File | Save. Aby uruchomić kod, wybieramy komendę Run | Run module lub naciskamy klawisz . Oto rezultat:

Linia 1. Python 3 kropka 6 kropka 9 otwórz nawias okrągły default przecinek Nov 7 2019 przecinek 10 dwukropek 44 dwukropek 02 zamknij nawias okrągły. Linia 2. otwórz nawias kwadratowy GCC 8 kropka 3 kropka 0 zamknij nawias kwadratowy on linux. Linia 3. Type cudzysłów help cudzysłów przecinek cudzysłów copyright cudzysłów przecinek cudzysłów credits cudzysłów or cudzysłów license otwórz nawias okrągły zamknij nawias okrągły cudzysłów for more information kropka. Linia 4. zamknij nawias ostrokątny zamknij nawias ostrokątny zamknij nawias ostrokątny. Linia 5. znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości RESTART dwukropek prawy ukośnik home prawy ukośnik python prawy ukośnik cytaty podkreślnik kino kropka py znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości znak równości. Linia 6. Niech Moc będzie z tobą kropka. Linia 7. Zagraj to jeszcze raz przecinek Sam kropka Zagraj dwukropek Jak mija czas kropka. Linia 8. Będzie potrzebna większa łódź kropka. Linia 9. minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus minus. Linia 10. zamknij nawias ostrokątny zamknij nawias ostrokątny zamknij nawias ostrokątny.

IDLE i PyCharm nie są jedynymi środowiskami do tworzenia programów. Inne, podobne narzędzia opisano na stronie Wiki Pythona.

1
Ważne!

W filmach samouczkach wykorzystywany jest edytor PyCharm. W momencie tworzenia nowego projektu edytor ten tworzy pliki z szablonu, gdzie na końcu mamy specyficzną instrukcję warunkową, dzięki której kod programu wykonywany jest w momencie jego wywołania. Specjalna zmienna dunderdunderdunder o nazwie name zawiera nazwę modułu, a jeśli uruchamiamy bezpośrednio plik w języku Python, ma wartość "main".

Linia 1. if podkreślnik podkreślnik name podkreślnik podkreślnik znak równości znak równości cudzysłów podkreślnik podkreślnik main podkreślnik podkreślnik cudzysłów dwukropek. Linia 2. print otwórz nawias okrągły cudzysłów Ten plik nie powinien być wykonywany samodzielnie kropka cudzysłów zamknij nawias okrągły.
R1Z4TbTB79u0Y
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

W momencie uruchomienia takiego programu w środowisku otrzymujemy efekt:

R9dUABa80LVZc
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Taka konstrukcja nie jest nam niezbędna; wykorzystywana jest w dużych projektach. Jeśli chcemy już dzisiaj zobaczyć, do czego może posłużyć taka kostrukcja, zajrzyj do e‑materiału Szyfrowanie i deszyfrowanie w języku PythonDq808wX8ZSzyfrowanie i deszyfrowanie w języku Python.

R1RdCkbnF7AMv
Źródło: Tomasz Mikolajczyk, domena publiczna.

Zasady pisania kodu

Komentarze

Jeśli chcemy w kodzie umieścić komentarz, zaczynamy go od znaku krzyżyka (#). Komentarz kończy się wraz z danym wierszem kodu.

Linia 1. print otwórz nawias okrągły cudzysłów Niech Moc będzie z tobą kropka cudzysłów zamknij nawias okrągły kratka cytat pochodzi z serii cudzysłów Star Wars cudzysłów. Linia 2. print otwórz nawias okrągły cudzysłów Zagraj to jeszcze raz przecinek Sam kropka Zagraj dwukropek Jak mija czas kropka cudzysłów zamknij nawias okrągły kratka cytat pochodzi z filmu cudzysłów Casablanca cudzysłów. Linia 3. print otwórz nawias okrągły cudzysłów Będzie potrzebna większa łódź kropka cudzysłów zamknij nawias okrągły kratka cytat pochodzi z filmu cudzysłów Szczęki cudzysłów.

Wcięcia

Za pomocą wcięć wyznacza się poziomy wierszy, a tym samym sposób grupowania instrukcji. Jedno wcięcie wykonane tabulacją odpowiada czterem spacjom. Należy pamiętać, by w obrębie jednego kodu nie łączyć ze sobą wcięć zrobionych spacjami oraz tabulacjami.

Słownik

PEP
PEP

(ang. Python Enhancement Proposal) oficjalny dokument przeznaczony dla społeczności programistów Pythona; dokumenty tego typu służą między innymi jako opis nowych funkcji języka lub tzw. coding style – zalecenia dotyczące sposobu pisania programów w Pythonie

dunder
dunder

(ang. double under) – funkcja, metoda lub właściwość specjalnego przeznaczenia w języku Python

licencja GPL
licencja GPL

(ang. General Public License) jedna z pierwszych licencji ruchu Wolnego Oprogramowania, opisana przez Richarda StallmanaEbena Moglena roku; pozwala ona legalnie dzielić się efektami własnej pracy z całym światem programistów; jest to podstawowa licencja systemów rodziny Linux

IDE
IDE

(ang. Integrated Development Environment) zintegrowane środowisko programistyczne; najczęściej zawiera edytor kodu źródłowego oraz wbudowany kompilator lub interpreter

apt
apt

polecenie służące do instalacji oprogramowania w systemach Linux korzystających z pakietów DEB (dostępne jest też dla systemów MacOS jako projekt Fink)

shell
shell

(powłoka); program, który interpretuje wpisywane polecenia (przykładowo, w systemie Windows jest to cmd.exe, w MacOS‑ie albo Linuksie bash); nazwa „shell” pochodzi od procesora poleceń systemu Multics, który był prekursorem Uniksa; shell został opracowany w latach sześćdziesiątych wieku na uczelni MIT w USA

REPL
REPL

(ang. Read‑Eval‑Print Loop); czytaj–wykonaj–wypisz–skocz na początek – tryb wpisywania poleceń w Pythonie lub w innych językach programowania; komendy są wykonywane po naciśnięciu klawisza ENTER

Linux
Linux

rodzina systemów operacyjnych dostępnych na licencji GPL; więcej na ich temat przeczytasz w e‑materiale System operacyjny LinuxPMrLdvg0BSystem operacyjny Linux

MacOS
MacOS

komercyjny system operacyjny dla komputerów firmy Apple, opierający się na systemie BSD (ma wiele cech wspólnych z Linuksem, ponieważ oba należą do rodziny systemów opartych na Uniksie)

Microsoft Windows
Microsoft Windows

rodzina komercyjnych systemów operacyjnych firmy Microsoft