Operatory i Argumenty

Operatorami są specjalne tokeny, reprezentujące obliczenia jak dodawanie, mnożenie i dzielenie. Wartości, na których wykonane jest działanie to argumenty.

Poniżej wymienione są prawidłowe wyrażenia Python, mniej więcej zrozumiałe dla wszystkich:

20 + 32
hour - 1
hour * 60 + minute
minute / 60
5 ** 2
(5 + 9) * (15 - 7)

Tokeny +, -, * oraz użycie nawiasów do grupowania znaczą dokładnie to samo co w matematyce. Symbol gwiazdki (*) jest operatorem mnożenia, a ** funkcji eksponencjalnej. Wszystkie wymienione operacje działają zgodnie z ich powszechnie znanym znaczeniem.




(ch02_15)

Kiedy zmienna pojawia się w miejscu argumentu jest automatycznie zastąpiona wartością do niej przypisaną przed wykonaniem operacji. Dla przykładu: obliczmy, ile godzin stanowi 645 minut. W Python 3, dzielenie jest oznaczane tokenem / i zawsze prowadzi do wyniku w postaci liczby zmienno-przecinkowej.




(ch02_16)

A teraz rozpatrzmy przypadek, w którym chcemy dowiedzieć się, ile pełnych godzin zawartych jest w 645 minutach oraz ile minut wynosi pozostała reszta. Python udostępnia drugi typ dzielenia, zwany dzieleniem całkowitym. Token tej operacji to //. Rezultat jest zawsze zaokrąglony w dół do najbliższej liczby całkowitej.




(ch02_17)

Zwróć szczególną uwagę na pierwsze dwa przypadki powyżej. W przypadku dzielenia zmienno-przecinkowego ( symbol „/”) wynik wynosi 1.75, natomiast przy dzieleniu całkowitym (symbol „//”) 1. Zadaniem programisty jest dobranie odpowiedniego rodzaju dzielenia w zależności od pożądanego rezultatu.

Operator modulo służy do obliczenia reszty z dzielenia całkowitego pomiędzy dwoma liczbami integer (całkowitymi). Symbolem operacji modulo w Python jest znak procentu (%). Składnia wyrażenia jest identyczna jak w poprzednich typach dzieleń.




(ch02_18)

W powyższym przykładzie 7 podzielone przez 3 daje wynik 2 przy użyciu dzielenia całkowitego, a pozostała reszta wynosi 1.

Operator modulo okazuje się bardzo użyteczny, np. aby sprawdzić podzielność liczby x przez liczbę y wystarczy obliczyć czy x % y wynosi 0. Ponadto możliwe jest wyodrębnienie cyfry, znajdującej się na pozycji jedności, którą zwróci wyrażenie x % 10 (dla systemu dziesiętnego). W podobny sposób, wywołując x % 100 otrzymamy dwie ostatnie cyfry liczby x.

Wracając do naszego przykładu, dotyczącego czasu, instrukcja modulo jest niezwykle przydatna przy konwersji, np. sekund na godziny lub minut na sekundy. Niżej pokazany program wykorzystuje dzielenie całkowite oraz obliczoną resztę przekonwertuje 7684 sekund na formę bardziej przystępną. Przeanalizuj kolejne wyrażenie w celu dokładnego zrozumienia działania tych operacji.

(ch02_19_codelens)

Sprawdź swoją wiedzę

data-7-1: Jaka wartość jest wyświetlana po wywołaniu poniższego wyrażenia?

print(18 / 4)





data-7-2: Jaka wartość jest wyświetlana po wywołaniu poniższego wyrażenia?

print(18 // 4)





data-7-3: Jaka wartość jest wyświetlana po wywołaniu poniższego wyrażenia?

print(18 % 4)





Następna część - Funkcja Input