Kurs programowania - Python na prostych przykładach cz. 7: Podsumowanie: co warto wiedzieć o Pythonie

Kolejne części naszego kursu publikowane będą w każdą środę

W siódmej części naszego kursu omówimy, co jeszcze warto wiedzieć o Pythonie

Poniżej znajdziecie wcześniejsze części naszego kursu programowania Python:

Program wczytujący trzy liczby i wyznaczający najmniejszą z nich

A – tworzy zmienną o nazwie czy_dalej, z wartością początkową t.

B – pętla while, która będzie powtarzać zawarte w niej instrukcje, aż do momentu, gdy zmienna czy_dalej przestanie mieć wartość t.

C – tworzy zmienną o nazwie a, której war­tość będzie nadana podczas wykonywania programu. Podany w nawiasie i cudzysłowie tekst zostanie wyświet­lony użytkownikowi, gdy ten będzie musiał podać liczbę. A podana wtedy liczba zostanie zrzutowana na typ Integer i zapisana w zmiennej. Typ Integer służy do przechowywania liczb całkowitych.

D – tworzy zmienną o nazwie b – analogicznie jak poprzednie polecenie.

E – tworzy zmienną o nazwie c – analogicznie do dwóch wcześniejszych linijek kodu.

F – instrukcja warunkowa sprawdzająca, czy zmienna b ma wartość większą niż zmienna a.

G – instrukcja warunkowa sprawdzająca, czy zmienna c ma wartość większą niż zmienna a; sprawdzenie to będzie wykonywać się tylko wtedy, gdy zmienna a ma wartość mniejszą niż zmienna b.

H – tworzy zmienną o nazwie najmniejsza i nadaje jej wartość zmiennej a. Ma to wskazać, że ta z trzech zmiennych ma najmniejszą wartość. Można tak zrobić, ponieważ ta linijka kodu wykona się tylko wtedy, gdy dwa wcześ­niejsze warunki zostały spełnione, to znaczy, gdy zmienna a ma wartość mniej­szą od zmiennej b i mniejszą od zmiennej c.

I – dodaje sekcję else do poprzedzającej tę linijkę instrukcji warunkowej.

J – tworzy zmienną najmniejsza i nadaje jej wartość zmiennej c. Linijka ta wykona się tylko wtedy, gdy warunek z pierwszego if jest spełniony, ale z drugiego już nie.

K – dodaje sekcję elif do pierwszej instrukcji warunkowej. Sekcja ta ma swój warunek sprawdzający, czy zmienna b ma wartość mniejszą niż c.

L – tworzy zmienną najmniejsza i nadaje jej wartość zmiennej b. Można tak zrobić, ponieważ ta linia kodu wykona się tylko wtedy, gdy warunek a

M – dodaje sekcję else do pierwszej instrukcji warunkowej.

N – tworzy zmienną najmniejsza i nadaje jej wartość zmiennej c. Możemy tak zrobić, ponieważ ta linijka kodu wykona się, tylko gdy warunki a

O – wypisuje wartość zmiennej najmniejsza.

P – prosi użytkownika o podanie nowej wartości zmiennej czy_dalej.

Co importować, gdy chcę…

korzystać z funkcji matematycznych import math tworzyć rysunki, przemieszczając po oknie grafikę żółwia import turtle używać liczb losowych (pseudolosowych) import random tworzyć programy użytkowe import tkinter tworzyć gry z grafiką 2D import pygame

Program wczytujący 10 liczb i określający, które z nich są parzyste, a które nie

A – tworzy listę o nazwie liczby.

B – tworzy pętlę for, której treść wykona się 10 razy. Zmienna w tej pętli, z każdym jej przejściem, będzie przyjmowała kolejne wartości od 0 do 9.

C – prosi użytkownika o podanie liczby, której wartość jest rzutowana na typ Integer, a następnie dodawana do listy o nazwie liczby.

D – tworzy pętlę for, która wykona się tyle razy, ile elementów jest na liście o nazwie liczby. Zmienna i w tej pętli będzie przyjmować wartości kolejnych elementów listy.

E – dla elementu z listy liczby sprawdza, czy reszta z dzielenia liczby przez 2 jest równa 0 (jeśli tak, liczba jest parzysta).

F – gdy warunek określony w instrukcji warunkowej jest spełniony, wykonuje się linijka kodu, która wypisuje wartość zmiennej i, a potem słowo Parzysta jako informację o liczbie.

G – dodaje do instrukcji warunkowej sekcję else.

H – ta linijka kodu wykonuje się, tylko gdy podany w instrukcji warunkowej warunek nie jest spełniony. Wtedy powinna zostać wypisana wartość zmiennej i, po czym w tej samej linijce wyświetlane jest słowo Nieparzysta jako informacja o liczbie.

Najważniejsze polecenia z modułu math

Nie wszystkie z nich zostały wykorzystane w zrealizowanych w książce zadaniach, jednak warto zapoznać się z nimi, ponieważ mogą okazać się przydatne w przyszłości.

cos(x) Zwraca cosinus argumentu x sin(x) Zwraca sinus argumentu x tan(x) Zwraca tangens argumentu x acos(x) Zwraca arcus cosinus argumentu x asin(x) Zwraca arcus sinus argumentu x cosh(x) Zwraca cosinus hiperboliczny argumentu x sinh(x) Zwraca sinus hiperboliczny argumentu x tanh(x) Zwraca tangens hiperboliczny argumentu x sqrt(x) Zwraca pierwiastek kwadratowy argumentu x pow(x,y) Zwraca wartość argumentu x podniesioną do potęgi y fabs(x) Zwraca wartość bezwzględną argumentu x degrees(x) Zwraca wartość kąta x podaną w radianach – w stopniach radians(x) Zwraca wartość kąta x podaną w stopniach – w radianach log10(x) Zwraca logarytm z argumentu x o podstawie 10 log(x,y) Zwraca logarytm o podstawie y z argumentu x. Jeśli podstawa logarytmu nie jest podana, zwraca logarytm naturalny z argumentu x pi Zwraca wartość liczby Pi e Zwraca wartość liczby E

Jak zatrzymać na chwilę wykonywanie programu?

Spośród modułów Pythona, które nie zostały omówione w książce, warto wymienić moduł time. Jest on wbudowany w Pythona i nie musimy go dodatkowo instalować, wystarczy sam import. Moduł ten ma ciekawe polecenie time.sleep(x), gdzie x oznacza czas zatrzymania programu wyznaczony w sekundach. Do czego można wykorzystać takie polecenie? Na przykład do budowy minutnika, który odliczy zadany czas. Oto przykładowy skrypt budujący minutnik.

Import modułów – najważniejsze informacje

W Pythonie mamy dwa sposoby importowania modułów, które były pokazane podczas realizacji zadań. Obydwa są przydatne, dlatego też powinniśmy umieć je wykorzystywać.

Pierwszym ze sposobów jest użycie polecenia import nazwamodułu. Korzystając z poleceń zawartych w module importowanym w ten sposób, musimy przed nazwą polecenia podawać też nazwę modułu, z którego ono pochodzi. Na przykładzie modułu turtle wyglądałoby to następująco.

Drugi sposób to użycie polecenia from nazwamodułu import *. Atrybuty i metody modułu są importowane bezpośrednio do lokalnej przestrzeni nazw, a więc będą dostępne bezpośrednio i nie musimy określać, z którego modułu pochodzą. Możemy importować określone polecenia

albo skorzystać ze znaku *,

aby zaimportować wszystko. Ostatnia z opcji najlepiej sprawdza się w programach, gdzie importujemy jeden bądź niewiele więcej modułów. Gdy musimy importować dużo modułów, lepiej korzystać z pierwszej opcji, aby nie pomylić poleceń.

Najważniejsze polecenia z modułu turtle

forward(x), fd(x) Przesuwają żółwia do przodu, w kierunku, w którym jest on zwrócony, o liczbę kroków podaną jako argument x backward(x), bk(x), back(x) Przesuwają żółwia do tyłu, względem strony, w którą jest on zwrócony, o liczbę kroków podaną jako argument x right(x), rt(x) Obracają żółwia w prawą stronę o kąt x wyrażony w stopniach left(x), lt(x) Obracają żółwia w lewą stronę o kąt x wyrażony w stopniach goto(x,y), setpos(x,y), setposition(x,y) Przesuwają żółwia do punktu w oknie programu określonego współrzędnymi x i y setx(x) Przesuwa żółwia po osi X do współrzędnej określonej argumentem x sety(x) Przesuwa żółwia po osi Y do współrzędnej określonej argumentem x setheading(x), seth(x) Ustawia kierunek żółwia na podany w argumencie x home() Przesuwa żółwia do punktu początkowego (0,0) circle(x) Przesuwa żółwia po okręgu o określonym promieniu x stamp() Pozostawia w oknie programu stempel w postaci grafiki żółwia clearstamp(x) Usuwa stempel żółwia o identyfikatorze x, który jest nadawany zgodnie z kolejnością tworzenia stempli clearstamps(x) Usuwa ostatnie lub początkowe stemple grafiki żółwia. Jeśli x nie jest podany, usuwa wszystkie stemple. Jeżeli jest on większy od zera, usuwa x początkowych stempli. Jeśli x jest poprzedzony znakiem minus, usuwa x ostatnich stempli undo() Przesuwa żółwia do pozycji, w której znajdował się przed użyciem ostatniego polecenia. Operacja jest możliwa do wykorzystania w pętli speed(x) Ustawia prędkość animacji poruszania się żółwia w skali od 1 do 10. Możliwe jest podanie wartości 0, co oznacza brak animacji, czyli największą możliwą prędkość powstawania rysunku pendown(), pd(), down() Opuszczenie pisaka żółwia penup(), pu(), up() Podniesienie pisaka żółwia pensize(x), width(x) Ustawia rozmiar pisaka, czyli grubość linii rysowanej przez żółwia isdown() Zwraca wartość True lub False, zależnie od tego, czy pisak żółwia jest opuszczony pencolor(x) Ustawia kolor linii rysowanych przez żółwia na kolor podany w argumencie x fillcolor(x) Ustawia kolor wypełnienia kształtów wytyczonych przez żółwia begin_fill() Rozpoczyna śledzenie ścieżki pokonywanej przez żółwia end_fill() Kończy śledzenie ścieżki pokonywanej przez żółwia i zamyka kształt

Procedura do wytyczania żółwiem dowolnych wielokątów foremnych

A – importuje do przestrzeni nazw projektu wszystkie polecenia z modułu turtle.

B – tworzy procedurę o nazwie wielobok, której wywołanie wymaga podania dwóch argumentów – boki i dl_boku. Mają one oznaczać odpowiednio liczbę boków w wielokącie oraz długość każdego z boków w figurze.

C – pętla for, która wykona się tyle razy, ile boków ma mieć figura, jaką chcemy stworzyć.

D – przesuwa żółwia w przód w kierunku, w którym był ustawiony, o tyle kroków do przodu, ile równa jest wartość parametru dl_boku.

E – zgodnie z matematyką suma kątów wewnątrz wielokąta foremnego ma być równa 360. Ponieważ wszystkie boki i kąty w tej figurze są takie same, liczba kątów to wartość parametru boki – każdy kąt ma 360/boki stopni i o taki kąt należy obrócić żółwia. Tym razem w prawą stronę.

F – wywołuje zdefiniowaną wcześniej procedurę wielobok, która ma narysować ośmiokąt foremny o bokach wielkości 50. Efekt uruchomienia programu jest następujący:

Program do przeliterowania dowolnego słowa

Wykorzystamy tu bardzo ważną właściwość zmiennych typu String, czyli ciągów znaków. Takie zmienne możemy traktować jako listy.

A – tworzymy zmienną o nazwie slowo, której wartość ma być podana przez użytkownika programu.

B – pętla for, która wykona się tyle razy, ile liter ma słowo zapisane w zmiennej slowo.

C – wypisuje wartość zmiennej litera, która w każdym przejściu pętli for przyjmuje wartości kolejnych liter z ciągu znaków slowo.

Efekt działania programu powinien być następujący:

Zasoby, które mogą ci się jeszcze przydać

NumPy – Numerical Python – podstawowy zestaw narzędzi, które umożliwiają zaawansowane obliczenia matematyczne na macierzach oraz szeregach i wektorach.

SciPy – podobnie jak NumPy jest to zestaw narzędzi, który umożliwia wiele operacji matematycznych, a co najważniejsze – wiele metod numerycznych, takich jak całkowanie, różniczkowanie numeryczne, algorytmy rozwiązywania równań różniczkowych, algorytmy z algebry liniowej, transformaty Fouriera czy przetwarzanie sygnałów.

Pandas – zestaw narzędzi do analizy danych relacyjnych (podobnych do SQL, lecz na obiektach).

Matplotlib – moduł do tworzenia wykresów, który wraz z NumPy, SciPy i Pandas jest konkurentem dla popularnych narzędzi – MatLab i Mathematica.

Django – wolny i otwarty framework przeznaczony do tworzenia aplikacji.

Pyglet to biblioteka graficzna i multimedialna przeznaczona do tworzenia gier komputerowych oraz aplikacji multimedialnych w języku Python.

Scrapy – otwartoźródłowy szkielet do tworzenia aplikacji napisany w języku programowania Python i służący do pisania robotów internetowych, które mogą przeszukiwać strony internetowe i wydobywać z nich określone dane.

Pylons – framework stworzony w Pythonie, który służy do szybkiego tworzenia skalowalnych aplikacji internetowych.

Nie tylko IDLE

IDLE to IDE, które standardowo dołączone jest do Pythona. Nie oznacza to jednak, że chcąc pisać w tym języku, jesteśmy skazani tylko na ten program. Warto poznać między innymi aplikację Thonny – to IDE Pythona przeznaczone szczególnie dla początkujących użytkowników. Aplikacja ta w jednym oknie łączy pole, w którym wpisujemy skrypty, i Shell, czyli naszą konsolę do komunikacji użytkownika z programem.

Thonny oferuje kilka przydatnych funkcji, jak możliwość sprawdzenia aktualnych wartości zmiennych, które pojawiają się w programie.

1. Aby to zrobić, z menu głównego rozwijamy opcję View.

2. Z rozwiniętej listy wybieramy pozycję o nazwie Variables.

3. Program wyświetla okno, w którym widać nazwy użytych zmiennych i ich aktualne wartości.

Narzędzia

Pisząc skrypty w Pythonie, możemy korzystać także z uniwersalnych edytorów kodu, jak dołączone na płycie Notepad++, Sublime Text czy Visual Studio Code.

Python nie tylko dla programistów

T en język programowania jest na tyle prosty, że często wykorzystuje się go w rozmaitych programach do tworzenia tak zwanych wtyczek. Są to programy przydatne w różnych dziedzinach nauki, często specjalistyczne, których wykorzystanie wymaga dużej wiedzy. Tak jest na przykład z programami typu GIS, czyli systemami informacji przestrzennej. Często pozwalają na tworzenie wtyczek właśnie w Pythonie. Popularność tego typu programów i ich specyfika, czyli wymaganie wiedzy geograficznej i informatycznej, doprowadziły do powstania dziedziny zwanej geoinformatyką, w której specjaliści od geografii, wykorzystując programistyczne umiejętności, mogą rozwijać programy przydatne właśnie geografom. To tylko jedna z gałęzi nauki bazująca na programowaniu. Tego typu połączeń jest więcej. Wśród programów wykorzystujących wtyczki w Pythonie należy wymienić QGIS.

Działania na ogromnych liczbach

Zaletą Pythona jest to, że doskonale radzi sobie z działaniami na ogromnych liczbach, które znacznie przekraczają zakres zmiennych w wielu innych językach. Dla Pythona wykonanie przykładowego działania 12345621412942149122139 + 4235235341241413513412412 – nie stanowi problemu.

Pierwszy program w Pythonie

Pierwszy program w Pythonie

Kod to tylko tekst. Aby ożył, potrzebny jest ktoś, kto go zinterpretuje, czyli zrozumie i wykona zawarte w nim instrukcje. Nawet najlepsza książka stanie się bezużyteczna, gdy nie ma czytelnika, którego mogłaby poruszyć lub czegoś nauczyć. Również kod nie ma żadnej wartości, póki nie zyska interpretera. Interpreter to taki program, który rozumie nasz kod. W najprostszym przypadku czyta go linijka po linijce i wykonuje jego instrukcje. W innych przypadkach tłumaczy ten kod na prostszy język, który będzie zrozumiały dla innego interpretera0.

Kod jest więc po prostu zestawem instrukcji. Interpreter wykonuje je jedna po drugiej i dzięki temu programy działają i czynią swoją magię. To trochę jak szczegółowe instrukcje, które dostawaliśmy od rodziców, gdy po raz pierwszy mieliśmy sami podgrzać obiad w piekarniku albo zrobić pranie. Instrukcje były kodem, a my byliśmy interpreterem tych instrukcji.

W czasie naszej przygody z programowaniem przyda nam się interpreter, któremu będziemy przekazywać instrukcje i obserwować, jak je zrozumie. Takie trochę konwersacje w obcym języku z... komputerem. Z Pythonem możemy rozmawiać na kilka sposobów, zaczynając od programu zainstalowanego na naszym komputerze, aż do stron internetowych ułatwiających takie konwersacje. Omówmy te możliwości po kolei.

Instalacja Pythona

Mówi się o instalacji języka Python, co jest jednak pewnym skrótem myślowym. Instaluje się interpreter języka Python, czyli program, który ten język będzie rozumiał i wykonywał jego instrukcje1. Współcześnie można go zainstalować na wszystkich popularnych systemach operacyjnych, tak jak instaluje się programy czy gry. Wystarczy wejść na stronę i pobrać plik do instalacji. Otwórz ten plik, zaznacz "Customize installation" i przejdź przez wszystkie kroki, pozostając przy ustawieniach domyślnych, z jednym tylko wyjątkiem: zaznacz pole "Add Python to environment variables" (najpewniej w drugim kroku). Jeśli proces się udał, to Python powinien już być na Twoim komputerze2.

Dodanie Pythona do zmiennych środowiskowych ("Add Python to environment variables") pozwala na jego odnalezienie, gdy wołamy komendę "python" w wierszu poleceń. Jeśli nie zaznaczyłeś/zaznaczyłaś tego pola, ponownie przejdź przez proces instalacji, tym razem je zaznaczając.

W czasie instalacji Python zaznacz "Add Python to environment variables". Umożliwi to korzystanie z niego w konsoli. Zaznaczenie "Download debug binaries" nie powinno być konieczne, ale lepiej zaznacz je, gdyż może się to przydać na dalszych etapach nauki.

Użycie Python z Wiersza poleceń

Następnym istotnym krokiem na drodze naszej nauki będzie uruchomienie Wiersza poleceń. Jest to bardzo istotne miejsce dla programistów. Pozwala na uruchamianie pewnych programów poprzez podanie ich nazwy. Wbrew pozorom, jest to ogromna wygoda. Wyobraź sobie, że potrzebujesz wykonać kod Python znajdujący się w pliku "hello.py". Gdyby interpreter Python uruchamiałby się jak typowe programy, to musielibyśmy uruchomić go, wskazać plik, zaakceptować i dopiero wtedy moglibyśmy zobaczyć wynik. Ponieważ uruchamia się go poprzez konsolę, wystarczy wpisać "python hello.py" i zatwierdzić przez Enter. Aby uruchomić go jeszcze raz, wystarczy w konsoli wcisnąć strzałkę w górę, przez co wybieramy poprzednio używane polecenie, i zatwierdzić przez Enter. Jest to spora wygoda dla programistów. Jeśli chcemy sprawdzić, którą wersję języka Python mamy zainstalowaną, wystarczy wpisać "python --version". W klasycznym programie trzeba by szukać tej informacji. Co więcej, wiersz poleceń umożliwia łatwą interakcję z użytkownikiem. Dobrym przykładem będzie Python REPL, który poznamy już niedługo. Używanie Pythona przez wiersz poleceń jest więc sporą wygodą.

Program Python uruchomiony w wierszu poleceń.

Aby otworzyć wiersz poleceń w systemie Windows, najłatwiej jest kliknąć okno wyszukiwania (w lewym dolnym rogu) i wpisać "cmd". Dzięki temu znajdziemy program podpisany jako "Wiersz polecenia"6. Otwórz go przez kliknięcie jego ikony lub naciśnięcie przycisku Enter. Na MacOS wystarczy otworzyć program o nazwie "Terminal", znajdujący się wśród aplikacji.

Na systemie Windows wiersz polecenia znajdziemy poprzez "cmd" lub nazwę "Wiersz polecenia".

Wygląd Wiersza poleceń w systemie Windows 10.

Gdy już mamy otwarty wiersz poleceń, upewnijmy się, że Python jest poprawnie zainstalowany na naszym komputerze. Wpisz "python --version". Jeśli nie wyświetla się wersja, to znaczy, że Python nie został zainstalowany poprawnie. Zacznij instalację od początku, pamiętając o zaznaczeniu "Add Python to environment variables" przy instalacji. Zainstalowany Python powinien być w co najmniej wersji 3.6 . Jeśli masz starszą wersję, to przykłady prezentowane w książce mogą nie zadziałać. W takim wypadku również zacznij proces instalacji od początku, upewniając się, że pobierasz instalator do nowszej wersji języka.

Sprawdzenie wersji Python zainstalowanego na komputerze.

Jeśli masz plik z kodem napisanym w języku Python, możesz go uruchomić poprzez komendę "python" i nazwę pliku. Przykładowo, jeśli plik nazywa się "hello.py"7, wpisz "python hello.py". Musi się on jednak znajdować w tym samym miejscu, w którym otwarty jest wiersz poleceń.

W Wierszu poleceń, po lewej stronie od miejsca gdzie wpisujemy komendy, znajduje się ścieżka w której aktualnie się znajdujemy.

Pliki Python najłatwiej nam będzie tworzyć przez narzędzie zwane środowiskiem programistycznym (IDE). Na ten moment, na potrzebę następnego ćwiczenia, możesz utworzyć plik tekstowy w folderze. Uważaj — jego domyślnym rozszerzeniem będzie txt. Jeśli przy zmianie nazwy pliku nie widzisz rozszerzenia, to znaczy, że na końcu jest niewidoczne Na tym etapie nie będzie to nam przeszkadzać, tylko w takim wypadku uruchom ten program przez "python

Nowy plik w systemie Windows tworzymy poprzez kliknięcie prawym przyciskiem myszy w folderze.

Do tworzenia i nazywania plików jeszcze wrócimy. Na ten moment poznajmy naszego najlepszego przyjaciela przy nauce języka Python: REPL.

Zadanie: Pierwszy program

Zainstaluj Python zgodnie z instrukcjami podanymi w tym rozdziale.

W folderze, w którym uruchomiony jest wiersz poleceń (domyślnie jest to folder domowy aktualnego użytkownika), utwórz plik i zmień jego nazwę na "hello.py". Kliknij w niego prawym przyciskiem i wybierz "Otwórz za pomocą" i znajdź "Notatnik".

W pliku napisz print("Hello from Python") , podobnie jak na powyższym zrzucie ekranu.

, podobnie jak na powyższym zrzucie ekranu. W Wierszu poleceń wywołaj "python hello.py" (lub "python jeśli nie udało Ci się zmienić rozszerzenia pliku).

Jeśli udało Ci się poprawnie wykonać wszystkie kroki, zobaczysz tekst "Hello from Python". Gratulacje, to Twój pierwszy program w języku Python.

Używanie REPL

REPL (ang. read-eval-print loop) to specjalne narzędzia stworzone do tego, aby dostarczać przestrzeń do uruchamiania kodu w danym języku programowania i pozwolić na obserwację, jaki daje on efekt. Zasada jego działania jest prosta: w każdym kroku pozwala nam na napisanie kolejnego fragmentu kodu. Gdy go zaakceptujemy przez enter, natychmiast go wywołuje i wyświetla nam wynik. Następnie pozwala nam na wpisanie kolejnego fragmentu, tak jakby był dalszą częścią wcześniej napisanego kodu. REPL jest kluczowym narzędziem do nauki programowania w języku Python. Jest on dostarczany razem z językiem. Istnieje kilka możliwości, jak możemy z niego skorzystać.

Razem z językiem Python, instalowany jest program o nazwie IDLE. Jest to niewielkie środowisko do pracy z językiem Python. Wystarczy je uruchomić, by skorzystać z REPL. Tutaj możesz pisać kod Python, a po zaakceptowaniu zobaczysz, jaki jest wynik jego działania.

Użycie IDLE.

REPL można również uruchomić z Wiersza poleceń. Wystarczy wpisać komendę "python". Jeśli Python jest poprawnie zainstalowany, to REPL powinien się uruchomić. Od tego momentu możemy pisać kolejne komendy i obserwować, jaki dają skutek.

Użycie REPL w wierszu poleceń.

Zadanie: Uruchom i przetestuj REPL

Otwórz IDLE.

Uruchom kod print("Hello") , zaakceptuj przez Enter i zaobserwuj, co się stanie.

, zaakceptuj przez Enter i zaobserwuj, co się stanie. Uruchom kod 10 * 20 + 30 , zaakceptuj przez Enter i zaobserwuj, co się stanie.

, zaakceptuj przez Enter i zaobserwuj, co się stanie. Uruchom wiersz poleceń (w Windowsie "cmd" lub "Wiersz polecenia", na MacOS lub Linux "Terminal").

Wpisz komendę python i zaakceptuj przez Enter.

i zaakceptuj przez Enter. Powtórz kroki 2 i 3 w Wierszu poleceń.

Środowisko programistyczne

REPL jest świetnym narzędziem do nauki języka Python, ale aby pisać poważne projekty, potrzebować będziemy narzędzia, w którym będziemy mogli tworzyć i rozwijać pliki w tym języku. Moglibyśmy użyć Notatnika3, ale jego możliwości są bardzo ograniczone. Znacznie lepsze są dedykowane narzędzia stworzone dla programistów do tworzenia i rozwijania projektów programistycznych, znane jako Środowiska programistyczne4. Mają one wsparcie dla wielu przydatnych funkcjonalności, takich jak:

przeglądanie całego drzewa plików w projekcie,

podpowiedzi przy pisaniu kodu,

kolorowania składni,

podkreślanie miejsc, w których popełniliśmy błędy,

narzędzia pozwalające na łatwe poruszanie się po kodzie,

uruchamianie kodu z poziomu IDE i wyświetlanie wyniku jego działania.

Użycie PyCharm z podpisanymi różnymi funkcjonalnościami tego programu.

Istnieje wiele dobrych IDE dla języka Python. Osobiście polecam PyCharm w wersji Community. Jest ono darmowe i open-source. Bardzo dobrą alternatywą jest też Visual Studio Code. W tej książce wykorzystywać będę PyCharm. Jego plik instalacyjny można pobrać ze strony JetBrains5. Po zainstalowaniu PyCharm utwórz nowy projekt. Na początek, domyślne ustawienia powinny być w pełni wystarczające.

Takie okno zobaczymy po zainstalowaniu PyCharm. Aby utworzyć nowy projekt, wybierz "New project".

Gdy tworzymy projekt, możemy określić jego nazwę poprzez zmianę nazwy folderu (pole "Location"). Polecam także zaznaczyć "Create a main.py welcome script".

Na powyższym zrzucie ekranu zaznaczone jest pole "Create a main.py welcome script". Dzięki temu w naszym projekcie zostanie stworzony przykładowy plik w języku Python. Po lewej stronie od if __name__... powinien się pojawić zielony trójkąt. Przy jego pomocy uruchomisz kod znajdujący się wewnątrz tego warunku if. Wynik działania tego programu powinien się pojawić w oknie u dołu.

PyCharm z uruchomionym "main.py welcome script". Zawiera on przykładowy kod w języku Python. Ten kod stanie się jasny na przestrzeni tej części książki.

if __name__ == '__main__': . * *Jednym ze sposobów by uruchomić program w języku Python jest użycie zielonego trójkąta. Pojawia się on obok specjalnej struktury. *

Po uruchomieniu kodu Python w PyCharm, u dołu powinno otworzyć się okno wyniku działania tego programu. Tutaj wynikiem jest tekst "Hi, PyCharm".

Alternatywnie możemy utworzyć samemu plik z kodem Python. Kliknij prawym przyciskiem myszy na folder, w którym znajduje się projekt, wybierz "New > Python file". Wpisz dowolną nazwę i zaakceptuj.

Aby utworzyć nowy plik Python, kliknij prawym przyciskiem myszy na folder w którym chcesz utworzyć plik, po czym wybierz "New > Python file".

Po wybraniu "New > Python file", wyświetli się okno nazwania pliku.

Utworzy się nowy plik, zupełnie pusty. W środku możesz wpisać po prostu "print("Hello")", po czym kliknąć prawym przyciskiem myszy na pliku i wybrać opcję "Run {nazwa pliku}".

Kod w pliku możemy także uruchomić poprzez kliknięcie prawym przyciskiem myszy na plik i wybranie opcji "Run {nazwa pliku}".

To powinno uruchomić kod z pliku i wyświetlić rezultat w oknie u dołu.

Po uruchomieniu kodu Python w PyCharm, u dołu powinno otworzyć się okno wyniku działania tego programu. Tutaj wynikiem jest tekst "Hello".

PyCharm ma między innymi własne wsparcie dla REPL. Na dole znajdziesz przycisk do otwarcia zakładki "Python Console". Po jego kliknięciu otworzy się okno REPL, w którym możemy patrzeć, jak zadziała napisany przez nas kod Python.

Gdy wybierzemy "Python Console" na dole PyCharm, otworzy się okno, a w nim Python REPL. Możemy w nim testować działanie kodu Python.

Zadanie: Przygotuj i przetestuj edytor kodu

Pobierz i zainstaluj PyCharm Community.

Utwórz nowy projekt, a w nim albo skorzystaj z przykładowego pliku, albo utwórz plik o nazwie "test.py".

Uruchom kod z domyślnie utworzonego pliku i zaobserwuj, jaki jest wynik jego działania.

Edytory Online

Edytory kodu możemy znaleźć także w wersji internetowej. Ich przewagą jest łatwość uruchomienia kodu oraz udostępniania go innym. Za przykładowy edytor online może nam posłużyć Po jego lewej stronie piszemy edytor kodu, a po prawej wynik działania tego kodu.

Użycie języka Python na stronie Po lewej stronie piszemy kod w edytorze dającym podpowiedzi i kolorowanie składni. Po wciśnięciu przycisku "Run", po prawej stronie zobaczymy, co zostało przez ten kod wypisane do konsoli.

Gdy zadajemy innym pytanie dotyczące naszego kodu (na przykład na forach czy grupach), dobrą praktyką jest umieszczenie go w jednym z edytorów online i przesłanie publicznego linku. Dzięki temu osoby chcące pomóc, zobaczą Twój kod w całości, z eleganckim kolorowaniem składni. Będą mogły także łatwiej sprawdzić, czy ich rozwiązanie zadziała i odpowiedzieć Ci nowym linkiem.

Kod w książce

Wszystkie fragmenty kodu przedstawione w książce możemy uruchomić w REPL, PyCharm albo w edytorze online. W niektórych tylko przypadkach są one kontynuacją wcześniej napisanego kodu. Jeśli tak jest, to musisz przekopiować zarówno ten, jak i poprzedni fragment. Zwróć tylko uwagę, by korzystać przy tym z Pythona w wersji trzeciej.

Komentarze

W Pythonie wszystko, co pojawi się po znaku # jest ignorowane, aż do końca linii. Są to tak zwane komentarze. Są przydatne do opisywania kodu.

# To jest komentarz, # tekst dla osoby czytającej kod, # zostanie zignorowany przez interpreter

Będę używał komentarzy, by opisać dany fragment kodu. Będę je także umieszczał za print , by poinformować Cię, co zostanie wypisane w wyniku działania danego kodu.

print ( "Witaj, Świecie" ) # Witaj, Świecie # Jak widać, gdy używam print, umieszczam # komentarz informujący, co zostało wypisane.

Nie zabraknie pewnych wyjątków od tej reguły. Gdy na przykład pojedynczy print zostanie użyty wielokrotnie do wyświetlenia różnych tekstów, to zamiast za nim, komentarz informujący o tym, co zostało wypisane umieszczę na końcu fragmentu kodu.

for i in range ( 3 ) : print ( i ) # Wypisze: # 0 # 1 # 2

Jak mówię, że coś zostanie wypisane, to w przypadku REPL pojawi się zaraz po zaakceptowaniu fragmentu kodu. Jak uruchomimy ten kod w PyCharm, to będzie on wyświetlony w oknie wyniku działania programu. Jeśli uruchomimy program z Wiersza poleceń, wypisany tekst pojawi się poniżej uruchomienia programu.

Instrukcje i białe znaki

Tak jak na wspomnianej wcześniej liście od rodziców było wiele instrukcji, tak i w naszym kodzie możemy umieścić więcej niż jedną instrukcję. Instrukcja to nierozdzielne polecenie dla interpretera — najczęściej wywołanie funkcji, deklaracja, przypisanie lub zwrócenie wartości. W języku Python typowo różne instrukcje znajdują się w różnych liniach. Linia może być pusta albo zawierać komentarz, a w takim wypadku nie zawiera instrukcji. Jeśli jednak mamy dwa aktywne fragmenty kodu, na przykład wywołanie print , to są to różne instrukcje.

print ( "Instrukcja 1" ) # Instrukcja 1 print ( "Instrukcja 2" ) # Instrukcja 2

Co istotne, te instrukcje muszą być w różnych liniach. Nasz kod nie zadziała, gdy będą w jednej.

print ( "Tekst 1" ) print ( "Tekst 2" ) # Błąd! Kod nie zostanie zrozumiany

Python jest bardzo wrażliwy na używane przez nas spacje i entery. Należy więc być ostrożnym. Na pocieszenie, środowisko programistyczne, takie jak PyCharm, pomoże nam utrzymywać nasz kod w odpowiednim porządku. Ułatwi nam poprawne pisanie kodu, a jeśli popełnimy jakiś błąd, podkreśli to miejsce. Najedź myszką na to podkreślenie, a zostanie wyświetlona informacja, jaki jest problem z napisanym kodem.

Błąd kompilacji zaznaczony jest w PyCharm czerwonym podkreśleniem. Wystarczy na niego najechać, by zobaczyć informację o błędzie.

Jeśli popełnimy istotny błąd, a mimo to nasz program się uruchomi, to jego działanie zostanie przerwane, gdy do tego błędu dojdzie. Mówi się, że wtedy nasz kod został przerwany poprzez wyjątek. Wyjątki są wyświetlane w oknie wynikowym na czerwono. Zazwyczaj zawierają opis wyjaśniający, co zrobiliśmy nie tak.

Przekonasz się o tym wszystkim w czasie nauki. Wyjątki są naprawdę przydatne. Uważnie czytaj wiadomości, jakie przekazują, bo zawierają podpowiedzi jak poprawić błędny kod.

Polskie znaki

W nowszych wersjach języka Python polskie znaki nie powinny stanowić problemu. Jeśli jednak zobaczysz błąd "SyntaxError: Non-ASCII character...", wstaw "# coding=utf-8" na początku pliku. To ustawi kodowanie na utf-8, które posiada wsparcie dla polskich znaków.

# coding=utf-8 print ( "Mała żaba łupi kraba" ) # Mała żaba łupi kraba

Pycharm: środowisko programistyczne dla Pythona

Tym razem skorzystamy z okazji, aby o tym porozmawiać PyCharm, czyli IDE (Zintegrowane środowisko programistyczne) między platformami stosowany w dziedzinie programowania, ma dwie wersje jeden, który jest podzielony na społeczność i edycję edukacyjną wydaną na licencji Apache i druga to wydanie profesjonalneZostałem wydany na zastrzeżonej licencji.

W wersji profesjonalnej za opłatą zapewnia dodatkowe funkcjonalności, takie jak środowisko kodowania do tworzenia stron internetowych, zdalnego programowania, a także obsługę baz danych.

Funkcje PyCharm

Pycharm pochodzi z konsolą Pythona gdzie możesz pisać skrypty w trakcie ich uruchamiania. W zależności od preferencji okna można przełączyć do trybu dokowania, trybu swobodnego, trybu okna lub trybu podziału. Po włączeniu trybu zadokowanego można go również aktywować, aby przypiąć narzędzia.

Pomoc w kodowaniu i analiza z uzupełnianiem kodu, składnią i podświetlaniem błędów.

Nawigacja po projekcie i kodzie, wyspecjalizowane widoki projektów, widoki struktury plików i szybkie skoki między plikami, klasami, metodami i zastosowaniami

Refaktoryzacja w Python: obejmuje zmianę nazwy, metodę ekstrakcji, wprowadzenie zmiennej, wprowadzenie stałej, podciągnięcie, naciśnięcie w dół i inne

Wsparcie dla frameworków web: Django, web2py i Flask

Wbudowany debugger Pythona

Zintegrowane testy jednostkowe z pokryciem kodu linia po linii

Rozwój języka Python w Google App Engine

Iintegracja kontroli wersji- Zunifikowany interfejs użytkownika dla Mercurial, Git, Subversion, Perforce i CVS z listami zmian i scalaniem.

Jak zainstalować PyCharm w systemie Linux?

W przypadku Ubuntu i pochodne PyCharm można pobrać z Centrum oprogramowania Ubuntu w trzech edycjach: wersja Pro, wersja EDU i wersja CE. Wystarczy wyszukać Pycharm, a on się pojawi.

W przypadku innych dystrybucji mamy bardziej ogólną instalację, wystarczy pobrać plik z oficjalnej strony Jet Brains.

Po zakończeniu pobierania otwórz terminal w folderze pobierania, w którym znajduje się plik i wpisz następujące polecenie w terminalu, aby go wyodrębnić:

tar -xvf

Możesz także kliknąć plik prawym przyciskiem myszy i kliknąć wypakuj tutaj. Zostanie rozpakowany do tego samego folderu, co plik

Zrobiłem to przejdźmy do folderu bin a następnie wpisz w terminalu, aby uruchomić Pycharm:

./pycharm.sh

Zainstaluj ze Snap

Aplikację można również zainstalować za pomocą pakietów przystawki, jedynym wymaganiem jest, aby nasz system obsługiwał przystawkę, w przeciwnym razie będziemy musieli ją zainstalować.

Mając pewność, że nasz komputer obsługuje przyciąganie, otwieramy terminal i wykonujemy następujące polecenie aby zainstalować wersję pro:

sudo snap install pycharm-professional --classic

Podczas dla wersji społecznościowej:

sudo snap install pycharm-community --classic

Wstępna konfiguracja Pycharm

Pierwsze uruchomienie Pycharm pozwoli Ci skonfigurować go na podstawie własnych preferencji, w tym skonfigurować motywy, umieszczać projekty i konfigurować wtyczki, które chcesz dołączyć.

Muszą przeczytać „Umowę o polityce prywatności” i zaakceptować ją, aby kontynuować.

Zrobione, możesz skonfigurować preferowany motyw poniżej, są w zasadzie trzy motywy interfejsu użytkownika: Intellij, Darcula i GTK +.

Mogą ułatwić uruchamianie środowiska IDE przy użyciu skryptów uruchamiania, ale można je pominąć.

Następnie mogą skonfigurować wtyczki, które chcesz dołączyć do instalacji. Początkowy ekran wtyczki będzie wyglądał następująco:

Pod koniec konfiguracji otworzy się okno podobne do poniższego aby utworzyć nowy projekt, otworzyć jeden lub wyjść z systemu kontroli wersji.

Po wybraniu projektu ekran początkowej aplikacji, który zobaczysz, będzie wyglądał następująco:

Dzięki temu na naszych komputerach zostanie zainstalowane IDE, na którym będą mogli zacząć rozwijać swoje projekty.

Jeśli znasz jakieś inne IDE podobne do Pycharm, nie wahaj się podzielić nim z nami w komentarzach.

Jarosław Kułak
Jarosław Kułak

Leave a Comment