Wprowadzenie do języka Python Mateusz Miotk 3 stycznia 2017 Instytut Informatyki UG 1
Krótko o historii języka Python Python jest potężnym, lecz mimo to łatwym w użyciu językiem programowania opracowanym przez Guida van Rosuuna i opublikowanym po raz pierwszy w 1991 roku. Pythona cechuje dobra skalowalność i może być używany do tworzenia zarówno malutkich projekcików jak też komercyjnych aplikacji o kluczowym znaczeniu. 2
Cechy języka Python Python ze swoimi zasadami i klarownymi regułami jest bardzo bliski językowi angielskiemu. To pozwala na powszechne stwierdzenie, że programowanie w języku Python jest jak programowanie z szybkością myśli. 3
Cechy języka Python Python ze swoimi zasadami i klarownymi regułami jest bardzo bliski językowi angielskiemu. To pozwala na powszechne stwierdzenie, że programowanie w języku Python jest jak programowanie z szybkością myśli. Programy pisane w Pythonie w porównaniu do innych języków są krótsze i są tworzone krócej w odróżnieniu od innych znanych języków programowania. 3
Cechy języka Python Języka Python używają potężne firmy informatyczne np: Google, IBM, Microsoft, NASA, Xerox, Yahoo itd. 4
Cechy języka Python Języka Python używają potężne firmy informatyczne np: Google, IBM, Microsoft, NASA, Xerox, Yahoo itd. Python jest również narzędziem wykorzystywanym przez profesjonalnych programistów gier m.in przez firmy Electronic Arts, Disney Interactive Media Group. 4
Cechy języka Python Języka Python używają potężne firmy informatyczne np: Google, IBM, Microsoft, NASA, Xerox, Yahoo itd. Python jest również narzędziem wykorzystywanym przez profesjonalnych programistów gier m.in przez firmy Electronic Arts, Disney Interactive Media Group. Python jest językiem klejącym tzn. może zostać zintegrowany z innymi językami programowania. To oznacza, że programista, używając Pythona może sporzytkować pracę już wykonaną w innym języku. 4
Cechy języka Python Języka Python używają potężne firmy informatyczne np: Google, IBM, Microsoft, NASA, Xerox, Yahoo itd. Python jest również narzędziem wykorzystywanym przez profesjonalnych programistów gier m.in przez firmy Electronic Arts, Disney Interactive Media Group. Python jest językiem klejącym tzn. może zostać zintegrowany z innymi językami programowania. To oznacza, że programista, używając Pythona może sporzytkować pracę już wykonaną w innym języku. Kod Pythona działa wszędzie. Python pracuje na każdym sprzęcie, od smartfonów po superkomputery. Jest dostępny na popularne systemy operacyjne (Linux, Windows, Mac OS). Ponadto programy napisane w Pythonie działają niezależnie od platformy, co oznacza, że niezależnie z którego systemu operacyjnego korzystał programista, program będzie działał na innym komputerze, w którym zainstalowany jest Python. 4
Cechy języka Python Języka Python używają potężne firmy informatyczne np: Google, IBM, Microsoft, NASA, Xerox, Yahoo itd. Python jest również narzędziem wykorzystywanym przez profesjonalnych programistów gier m.in przez firmy Electronic Arts, Disney Interactive Media Group. Python jest językiem klejącym tzn. może zostać zintegrowany z innymi językami programowania. To oznacza, że programista, używając Pythona może sporzytkować pracę już wykonaną w innym języku. Kod Pythona działa wszędzie. Python pracuje na każdym sprzęcie, od smartfonów po superkomputery. Jest dostępny na popularne systemy operacyjne (Linux, Windows, Mac OS). Ponadto programy napisane w Pythonie działają niezależnie od platformy, co oznacza, że niezależnie z którego systemu operacyjnego korzystał programista, program będzie działał na innym komputerze, w którym zainstalowany jest Python. Python jest bezpłatny z otwartym dostępem do kodu źródłowego. 4
Instalacja Pythona w systemie Windows Aby zainstalować Pythona na komputerze należy: Wejść na stronę https://www.python.org/. Przejść do zakładki Downloads i wybrać wersję 2.7.13 Ściągnąć odpowiednią instalację na dany system operacyjny Zainstalować i gotowe 5
Instalacja Pythona w systemie Windows Rysunek 1: Wersje instalacyjne pythona 6
Instalacja Pythona - uwagi Z Pythonem powinno zainstalować się IDLE (jest to zintegrowane środowisko programistyczne), które pozwala nam pisać programy w języku Python w trybie skryptowym (wyjaśnione będzie później). W systemie Linux nie ma potrzeby instalacji Pythona, ponieważ jest on zainstalowany. 7
Uruchomienie Pythona Okno Pythona wygląda następująco (w systemie Linux): Rysunek 2: Konsola Pythona 8
Pierwszy program - funkcja print() Uruchomienie konsoli Pythona pozwala na programowanie w tzw. trybie interaktywnym czyli na bieżąco możemy śledzić działanie programu, wprowadzając po kolei linijka po linijce polecenia. Pierwszy program w języku Python: print ("Cześć Python. To jest mój pierwszy program!") Cześć Python. To jest mój pierwszy program! 9
Pierwszy program - funkcja print() Uruchomienie konsoli Pythona pozwala na programowanie w tzw. trybie interaktywnym czyli na bieżąco możemy śledzić działanie programu, wprowadzając po kolei linijka po linijce polecenia. Pierwszy program w języku Python: print ("Cześć Python. To jest mój pierwszy program!") Cześć Python. To jest mój pierwszy program! Polecenie print() jest tzw. funkcją i zwraca tekst ujęty w cudzysłowiach przekazany w nawiasach. 9
Pojęcie funkcji w programowaniu Funkcja to miniprogram, który startuje i wykonuje pewne określone zadanie. Na przykład zadaniem funkcja print() jest wyświetlanie jakiejś wartości (lub ciągu wartości). 10
Pojęcie funkcji w programowaniu Funkcja to miniprogram, który startuje i wykonuje pewne określone zadanie. Na przykład zadaniem funkcja print() jest wyświetlanie jakiejś wartości (lub ciągu wartości). Uwaga Funkcje w Pythonie również zwracają wartości, czyli dostarczają informację z powrotem do tej części programu, która wywoła daną funkcję. Nazywają się one wartościami zwracanymi. 10
Generowanie błedu w Pythonie Komputery biorą niestety wszystko dosłownie. Pomyłka w nazwie funkcji prowadzi przeważnie do katastrofy i nieuruchomienia się programu, ponieważ komputer nie będzie miał pojęcia o co chodzi programiście. Na przykład napisanie takiego polecenia: primt ("Cześć Python. To jest mój pierwszy program!") Spowoduje wyświetlenie następującego błędu: Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'primt' is not defined 11
Programowanie w trybie skryptowym Korzystanie z trybu interaktywnego daje natychmiastową informacje zwrotną. Jednakże tryb interaktywny nie został stworzony do pisania programów, lecz bardziej do testowania ich lub pojedyńczych poleceń/funkcji. Jednak można kod Pythona zapisać w dowolnym pliku tekstowym i uruchomić go poprzez dwukrotne kliknięcie myszą (w systemie Windows) lub przy użyciu polecenia python nazwa_pliku w systemach Linuxowych. Uwaga Dla czytelności najlepiej zapisywać każdy plik napisany w języku Python, używając rozszerzenia.py. 12
Komentarze w Pythonie Weźmy następujący kod programu: #Ten program to nasz pierwszy program w Pythonie #Tu kolejna linijka komentarzy print("witaj Python. Jak się dziś masz?") Witaj Python. Jak się dziś masz? Pierwsze dwa wiersze nie są instrukcjami dla komputera, lecz komentarzami (tak jak % w LaTeX). Są one przeznaczone dla ludzi (przeważnie dla programistów). Służą one za wyjaśnienie kodu zarówno dla twórcy jak i innych programistów. Komentarze są bardzo użyteczne jeżeli inny programista zmuszony jest zmodyfikować czyiś program. Jest to bardzo powszechna praktyka w świecie współczesnego programowania, dlatego uważa się, że większość czasu i wysiłku programisty jest zużywana na konserwację kodu, który już istnieje. 13
Podstawowa interakcja z użytkownikiem - funkcja input() Weźmy następujący kod programu: # To jest przykład programu z reakcją użytkownika print("jest to pierwszy program, gdzie musisz coś zrobić") input("\n\naby zakończyć program naciśnij klawisz ENTER") Funkcja input() pozwala na wczytanie znaków z poziomu klawiatury użytkownika. 14
Więcej informacji o funkcji print() Weźmy następujacy kod programu: # Ten program pokazuje co jeszcze można robić z funkcją print() print("program 'Cudzysłów' 2.0") print("to", "będzie", "to", "samo") print("to", "będzie", "inaczej." ) print("oto", end=" ") print("python...") 15
Bajeranckie wyświetlenie tekstu print ( """ \ / # ## `( `^=_ p _###_ c / ) / - //^---~ _c 3 / ----^\ /^_\ / --,- ( O_ \\_/,/ / \ `-- / (((G ----- //-----\\ // \\ / ^ / ) ( \ """ ) 16
Używanie sekwencji specjalnych w łańcuchach znaków Sekwencje specjalne umożliwiają umieszczanie w łańcuchach znaków o szczególnym charakterze. Dają większą kontrolę nad wyświetlanym tekstem i elastyczność w jego tworzeniu. Sekwencje specjalne, składają się ze znaku poprzedzającego lewym ukośnikiem Wybrane sekwencje specjalne: Sekwencja Opis + Lewy ukośnik \' Pojedyńczy cudzysłów \" Podwójny cudzysłow \a Alarm \n Nowy wiersz \t Tabulator poziomy 17
Używanie sekwencji specjalnych - przykład print("\t\t\ttytuł") print("\t\t\t \\ \\ \\ \\") print("\t\t\t Ala") print("\nma kota") print("henry\'emu \"Wielkiemu\", który coś powiedział") print("\a") input("\n\naby zakończyć program, naciśnij ENTER") 18
Konkatenacja łańcuchów Konkatenacja łańcuchów oznacza ich połączenie w celu utworzenia jednego nowego łańcucha. Używa się do tego operatora +. Przykład: print("to" + "jest" + "konkatenacja" + "tekstu") Tojestkonkatenacjatekstu Przykład: print("to" \ + "jest" \ + "inny" \ + "przykład") Znak \ jest znakiem kontynuacji wiersza. 19
Powielanie łańcuchów - przykład print ("Ala ma kota" * 3) Ala ma kotaala ma kotaala ma kota 20
Operacje na liczbach Do tej pory używaliśmy wyłącznie łańcuchów do reprezentowania tekstu. To tylko jeden z wielu typów wartości, które mogą być używane w języku Python. Jedną z najbardziej podstawowych i zarazem najważniejszych form informacji są liczby. Wykorzystywane są one w prawie każdym programie. W Pythonie istnieje kilka różnych typów liczb, na których możemy używać następujące operatory matematyczne: Operator Opis Przykład Wartość wyrażenia + Dodawanie 7 + 3 10 - Odejmowanie 7-3 4 * Mnożenie 7 * 3 21 / Dzielenie zmiennoprzecinkowe 7/3 2.333333333333333333 // Dzielenie całkowite 7/3 2 % Modulo 7 % 3 1 21
Operacje na liczbach przykład print("7+3",7+3) print("7-3",7-3) print("7*3",7*3) print("7/3",7/3) print("7//3",7//3) print("7%3",7%3) ('7+3', 10) ('7-3', 4) ('7*3', 21) ('7/3', 2) ('7//3', 2) ('7%3', 1) 22
Bibliografia Micheal Dawson, PYTHON dla każdego. Podstawy programowania. Wydanie III, Helion, 2014. 23