0

НМЦ

Програмування мовою Python: основи та практика

Електронний посібник

ВФПО

ТЕМА 3. ЧИСЛОВІ ДАНІ

 

 

 

 

Уроки Python з нуля / #3 – Основні дії в мові PYTHON

 

Презентація. Числові дані в PYTHON №3

 

 

Числа є різними: цілими, дробовими, комплексними.

Вони можуть мати величезне значення або дуже довгу дробову частину:

v цілі числа (int) – додатні і від’ємні цілі числа, а також 0 (наприклад, 4, 687, -45, 0).

v числа з рухомою точкою (float) – дробові числа (наприклад, 1.45, -3.789654, 0.00453). Роздільником цілої і дробової частини служить точка.

v комплексні числа (complex) – зберігає пару значень типу float, одне з яких становить дійсну частину комплексного числа, а інше – уявну (наприклад, 1+2j, -5+10j, 0.44+0.08j)

 

 

Математичні та бітові операції Математичні операції

 

Символ операції

Призначення

Використання

Приклад

+

Додавання

x + y

2 + 3 результат 5

При a=3 та b=2

a + b результат 5

-

Віднімання

x – y

3 – 2 результат 1

*

Множення

x * y

2 * 3 результат 6

/

Ділення

x / y

4     / 2 результат 2.0

5     / 2 результат 2.5

//

Знаходження цілої частини від ціло­чисельного ділення

x // y

7 // 3 результат 2

7 // –3 результат –3

-7 // 3 результат –3

-7 // –3 результат 2

%

Знаходження залишку від цілочисельного ділення

x % y

7 % 3 результат 1

7 % -3 результат –2

-7 %3 результат 2

-7 % -3 результат –1

Пояснення:

c = a // b

z = a % b, z має той же знак що і b таким чином, щоб a = c * b + z

**

Піднесення до

степеня

x**y

2**3 результат 8

4**0.5 результат 2.0

 

Якщо як операнди деякого арифметичного виразу використовують тільки цілі числа, то результат теж буде ціле число, винятком є операція ділення, результатом якої буде дійсне число. У разі спільного використання цілих і дійсних чисел результатом буде дійсне число.

 

Деякі з перерахованих вище операторів можуть застосовуватися не тільки до значень числових типів, а й, наприклад, до тексту чи до списків

Наприклад, як результат виконання команди txt= «Мова «+» Python» змінна txt посилатиметься на текстове значення «Мова Python». Якщо ми спробуємо помножити текстове значення на ціле число (або ціле число на текст), то матимемо текстовий рядок, отриманий повторенням (і конкатенацією) вихідного рядка (кількість повторів визначається цілочисловим операндом в інструкції множення тексту й числа). Наприклад, як результат виконання команди txt= «Python»*3 змінна txt посилатиметься на текст «Python Python Python», отриманий трикратним повторенням і конкатенацією вихідного тексту «Python».

 

Бітові операції над цілими числами

 

У мові Python передбачено бітові (побітові) операції над цілими числами. Такі операції називають бітовими, тому що вони виконуються послідовно над окремими бітами операндів (побітово).

 

Символ операції

Призначення

Використання

Приклад

&

Бітове «І» (AND)

x & y

9&3 результат 1 Пояснення: 910=10012         

310=00112

Після бітового

«AND» отримаємо: 00012=110

|

Бітове «АБО» (OR)

x | y

9 | 3 результат 11 Пояснення: 910=10012       310=00112

Після бітового «OR» отри­маємо: 10112=1110

^

Бітове, ВИНЯТКОВЕ АБО (XOR)

x ^ y

9 ^ 3 результат 10 Пояснення: 910=10012

310=00112

Після бітового

«XOR» отримаємо: 10102=1010

~

Бітова операція НІ (NOT). Для

числа x відповідає

-(x+1)

~x

~9 результат -10

<< 

Зсув вправо на кіль­кість біт.

До числа в двійковому записі справа дописує­ться вказана кількість нулів

x << n

9 << 1 результат 18 Пояснення: 910=10012

Після дописування справа одного 0 отримаємо: 100102=1810

>> 

Зсув вліво.

З числа в двійковому записі забирається вка­зана кількість розрядів

x >> n

9 >> 1 результат 4 Пояснення: 910=10012

Після прибирання справа одного символу отримаємо: 1002=410

 

Короткий запис математичних та бітових операцій

 

Часто виникає потреба змінювати значення змінної як результат математичних або бітових операцій. У мові Python є коротка форма запису для таких випадків, наприклад: замість запису a = a + 3, можна використовувати більш компактний варіант a += 3. Така скорочена форма працює і для інших математичних або бітових операцій, даючи змогу спростити код і зробити його більш зрозумілим.

 

 

Як у математиці, так і в мові програмування Python, оператори мають різний пріоритет. Наприклад, у виразі 2 + 3 * 4, операція множення виконається першою, оскільки має вищий пріоритет, ніж операція додавання. Така сама логіка визначення пріоритету застосовується і в мові Python, де оператори обчислюються у порядку їхнього пріоритету. Нижче наведено таблицю, що відображає пріоритет операторів в мові Python, починаючи з найнижчоговерхній частині таблиці) і закінчуючи найвищим (у нижній частині таблиці).

 

Оператор

Опис

lambda

Лямбда-вираз (Лямбда-функція)

or

Логічне «АБО»

and

Логічне «І»

not x

Логічне «НІ»

in, not in

Перевірка приналежності

is, is not

Перевірка тотожності

<, <=, >, >=, !=, ==

Оператори порівняння

|

Бітове «АБО»

^

Бітове «ВИНЯТКОВЕ АБО»

&

Бітове «І»

<<, >>

Зсуви

+, -

Додавання та віднімання

*, /, //, %

Множення, ділення, цілочисельне ділення та

залишок від ділення

+x, -x

Додатне, від’ємне

~x

Бітове «НІ»

**

Піднесення до степеня

x.attribute

Посилання на атрибут

x[індекс]

Звернення за індексом

X [індекс1: індекс2]

Зріз

F (аргументи ...)

Виклик функції

(вираз, ...)

Кортеж (tuple)

[вираз, ...]

Список (list)

{ключ: дані, ...}

Словник (dict)

 

У таблиці оператори з рівним пріоритетом розміщені в одному рядку (наприклад, + та мають рівний пріоритет).

Оператори, які ще не було розглянуто, будуть описані в наступних розділах.

Так само, як і в математиці, в мові Python під час формування математичних виразів для зміни порядку обчислень можна використовувати дужки. Наприклад (2 + 3) * 4.

Мова Python дає змогу створювати дуже елегантні програмні коди. Тут ми скористаємося можливістю, щоб проілюструвати це твердження.

 

Програмний код:

a=(5+2)**2-3*2 # Результат 43

b=6-5/2 # Результат 3.5

c=10//4+10%3 # Результат 3

# Результати обчислень виводимо на екран Print («Результати обчислень:») print (a,b,c)

Ми перепишемо трохи інакше. Зокрема, застосуємо функцію eval(), яка дає змогу обчислювати вирази, задані в текстовому форматі. Наприклад, якщо певний алгебраїчний вираз, записаний відповідно до правил синтаксису мови Python, взяти у подвійні лапки, то вийде текст. Якщо цей текст тепер передати аргументом функції print(), то на екрані з’явиться відповідний алгебраїчний вираз. Якщо ж текст (із алгебраїчним виразом) передати аргументом функції eval(), то відповідний алгебраїчний вираз буде обчислено.

a=ʺ(5+2)**2-3*2ʺ # Текстове значення

b=ʺ6-5/2ʺ # Текстове значення

c=ʺ10//4+10%3ʺ # Текстове значення

# Результати обчислень виво­димо на екран.

# Для «обчислення» текстових виразів

# використовуємо функцію eval()

print(«Результати обчислень:»)

print(a+ʺ =ʺ,eval(a))

print(b+ʺ =ʺ,eval(b))

print(c+ʺ =ʺ,eval(c))

Результати обчислень:

(5+2)**2-3*2 = 43

6-5/2 = 3.5

10//4+10%3 = 3

 

 

У мові Python, окрім вбудованих типів даних, є вбудовані функції, які доступні без додаткових налаштувань і включені до стандартної бібліотеки. Розгляньмо деякі з цих функцій, які можна використовувати з цілими та дійсними числами.

abs(X) повертає абсолютне значення (модуль) числа.

divmod(A, B) повертає пару чисел (P, R), які є цілою частиною P та остачею R за виконання цілочисельного ділення. Для цілих чисел результат буде таким самим, як і за (A // B, A % B). Для дійсних чисел результатом є (Q, A % B), де Q, зазвичай, math.floor(A / B), але може бути і на 1 менше. Незважаючи на це значення за виразом Q * B + A % B дуже близьке до A, якщо A % В не рівне нулю, то має такий самий знак, як і B, 0 <= abs(A%B) < abs(B).

>>> divmod(7,2)

(3, 1)

pow(X, Y[, Z]) – повертає X в степені Y за модулем Z (обчислюється більш ефективно, ніж pow (X, Y) % Z). Двоаргументна форма pow(X, Y)еквівалент використання оператора піднесення до степеня: X**Y. Якщо параметр Z заданий, то X та Y мають бути цілочисельними, окрім того, Y має бути невід’ємним.

>>> pow(2,4)

16

>>> pow(2,3,3)

2

round(number[, ndigits]) повертає число number, округлене до ndigits знаків після десяткової точки.

Проте поведінка round() для дійсних чисел може бути несподіваною, це результат факту, що деякі десяткові дроби не можуть бути представлені точно як дійсні числа.

>>> round (2.75, 1)

2.7

>>> round (2.85, 1)

2.9

>>> round (2.55, 1)

2.6

>>> round (2.675, 2)

2.68

>>> round (2.685, 2)

2.68

Якщо параметр ndigits не заданий, то округлення відбувається до найближчого цілого числа. Проте, якщо дробова частина = 0.5, то виконується «Банківське округлення», тобто округлення до найближчого парного числа.

>>> round (2.5, 2)

2

>>> round (3.5, 2)

4

max(arg1, arg2, *args, *[, key=func]) повертає найбільше значення з двох чи більше аргументів. Ця функція має ширші можливості, але про них пізніше.

min(arg1, arg2, *args, *[, key=func]) повертає найменше значення з двох чи більше аргументів. Ця функція має ширші можливості, але про них пізніше.

int([object], [osn]) повертає перетворене значення object до цілого десяткового числа. osn визначає систему числення задання object (osn  від 2 до 36 включно). Стандартно object=0, osn=10.

>>> int(4.9)

4

>>> int(‘11’)

11

>>> int(‘11’,2)

3

float([X]) повертає перетворене X до дійсного числа.

>>> float(‘1.23’)

1.23

>>> float(‘1e-003’)

0.001

>>> float(3)

3.0

bin(X) повертає рядковий запис цілого числа X у двійковій формі.

>>> bin(5)

‘0b101’

hex(X) повертає рядковий запис цілого числа X в шістнадцятковій формі. Для перетворення дійсного числа використовується метод float.hex(X).

>>> hex(255)

‘0xff’

>>> float.hex(3.4)

‘0x1.b333333333333p+1’

oct(X) повертає рядковий запис цілого числа X у вісімковій формі.

>>> oct(12) ‘0o14’

bool([X]) повертає приведене значення X до логічного типу (bool), використовуючи стандартну процедуру перевірки істинності. Повертає логічне значення True або False.

>>> bool(1)

True

>>> bool(15)

True

>>> bool(0)

False

 

3.4. Модуль Math

 

Крім вбудованої стандартної бібліотеки з багатим спектром функцій, у мові Python є чимало додаткових бібліотек, які можна використовувати під час написання програм.

 

Одна з цих бібліотек, яка включає математичні функції та дає змогу працювати з числовими даними, це модуль math.

 

Для користування цим модулем його потрібно імпортувати, використовуючи команду import math. Погляньмо на константи та функції, які доступні у бібліотеці math.

Після того, як модуль підключено, описані в ньому функції, змінні й інші корисні конструкції можна використовувати в програмному коді. Але при цьому щоразу необхідно явно зазначати ім’я модуля, в якому описано змінну або функцію. Використовується так званий крапковий синтаксис: спочатку зазначаємо ім’я модуля, і через крапку ім’я змінної або назву функції (з усіма належними аргументами). Наприклад, якщо ми хочемо використовувати змінну, яку описано в модулі, то відповідна інструкція матиме вигляд як модуль.змінна. До того ж попередньо за допомогою команди import модуль необхідно імпортувати модуль. Більш конкретно, у модулі math є змінна pi зі значенням сталої p ≈ 3,14159265. Якщо ми хочемо побачити значення цієї змінної, то спочатку за допомогою команди import math підключаємо модуль math, а потім за допомогою команди print(math.pi) відображаємо значення змінної pi із модуля math.

Замість того щоб використовувати ім’я модуля під час звернення до його «вмісту», можемо для модуля створити «псевдонім». Модуль підключаємо за допомогою команди у форматі import модуль as ім’я. Інакше кажучи, в інструкції підключення модуля після імені модуля через ключове слово as можна вказати ідентифікатор, який використовуватиметься замість імені модуля. Тобто модуль все одно підключається, але коли ми звертаємося до змінних і функцій цього модуля, то вказуємо не ім’я модуля, а ідентифікатор (той, який після ключового слова as). Наприклад, якщо ми підключаємо модуль за допомогою команди import модуль as ім’я, то звертатися до змінної з модуля потрібно у форматі ім’я.змінна. Якщо згадати про модуль math і підключити його за допомогою команди import math as m, то роздрукувати значення змінної pi можна за допомогою команди print(m.pi).

 

Якщо ми підключили модуль із «псевдонімом», то звертатися до вмісту модуля доведеться через «псевдонім» спроба використовувати ім’я модуля призведе до помилки.

 

Впадає в око незручність, пов’язана з необхідністю вказувати в явному вигляді ім’я модуля (або його «псевдонім») у разі звертання до змінних і функцій модуля. Але тут приховано й головну перевагу: безпосередньо в програмному коді ми можемо визначити змінну (функцію або щось іще) з таким самим іменем, як і в модулі, який підключається. У цьому разі наявність або відсутність імені модуля під час звертання до змінної (або функції) дає змогу однозначно ідентифікувати, про яку програмну конструкцію йдеться.

Водночас можна підключати не весь модуль, а тільки деякі його утиліти (змінні або функції). Скажімо, якщо з модуля нас цікавить тільки одна змінна, то можемо скористатися командою from модуль import змінна. Після цього змінну можна використовувати без посилання на ім’я модуля. Зокрема, щоб використовувати в програмному коді змінну pi без зазначення перед її іменем назви модуля math, застосовуємо інструкцію імпорту from math import pi.

Якщо ми хочемо підключити всі утиліти з деякого модуля, корисною буде інструкція from модуль import * (тобто після інструкції import вказуємо зірочку *).

 

Константи:

math.pi. Число π (math.pi≈3.141592653589793).

math.e. Число e (math.e≈2.718281828459045).

math.tau. Математична константа кола, рівна 2π.

math.inf. Додатна нескінченність (дійсне значення). Еквівалентно результату float(‘inf’). Для від’ємної нескінченності використовується: -math.inf.

math.nan. «не число» (―not a number‖ (NaN)). Еквівалент результату float(‘nan’).

Перевірка значень:

math.isclose (A, B, *, rel_tol=1e-09, abs_tol=0.0).

 

Ця функція повертає значення True, якщо числа A та B є достатньо близькими одне до одного, і False у протилежному разі. Щоб визначити, чи є числа близькими, використовується абсолютне і відносне відхилення.

 

rel_tol (відносне відхилення) ‒ це максимальна допустима різниця між A та B, враховуючи більше значення між ними.

 

Наприклад, rel_tol=0.05 встановлює відхилення в 5%. Початкове значення rel_tol=1e-09 гарантує, що два значення вважаються однаковими приблизно в 9 десяткових цифрах. rel_tol має бути більшим за нуль.

 

abs_tol (абсолютне відхилення) ‒ це мінімальна абсолютна різниця.

 

Застосовується до порівнянь значень, близьких до нуля. abs_tol має бути не менше нуля.

 

Логічний вираз функції можна записати так:

abs(a b) <= max(rel_tol * max(abs(a), abs(b)), abs_tol).

 

Значення NaN не вважається близьким до будь-якого іншого значення (навіть до себе). Значення math.inf та -math.inf вважаються близькими лише до самих себе.

math.isfinite(X). Повертає True, якщо X не є ні нескінченністю (math.inf та –math.inf), ні NaN, і False в іншому разі. Зауважимо, що 0.0  вважається скінченним.

math.isinf(X). Повертає True, якщо X є нескінченністю, і False в іншому разі.

math.isnan(X). Повертає True, якщо X є NaN, і False в іншому разі.

 

Функції округлення чисел:

math.ceil(X). Повертає найближче ціле число, більше ніж X (округлення вгору).

>>> math.ceil(3.1)

4

>>> math.ceil(-3.1)

-3

math.floor(X). Повертає найближче ціле число, менше ніж X (округлення вниз).

>>> math.floor(3.8)

3

>>> math.floor(-3.8)

-4

math.trunc(X). Повертає усічене значення X до цілого.

>>> math.ceil(3.8)

4

>>> math.ceil(-3.8)

-3

 

Функції представлення та теоретико-числові функції

math.copysign(X, Y). Повертає дійсне число, що має абсолютне значення таке саме, як і у числа X, а знак як у числа Y.

>>> math.copysign(3, -5)

-3.0

>>> math.copysign(-3, 5)

3.0

math.fabs(X). Повертає абсолютне значення числа.

>>> math.fabs(-7.3) 7.3

math.frexp(X). Повертає мантису і експоненту числа у формі пари (M, E), таким чином, що, X=M*2E. M – дійсне число (0,5 <= abs(M) < 1), а E ціле число.

>>> math.frexp(7.3) (0.9125, 3)

math.ldexp(X, I) повертає X*2I. Функція, зворотна функції math.frexp().

>>> math.ldexp(0.9125, 3)

7.3

math.modf(X). Повертає дробову і цілу частину числа X у формі пари (D, C). Обидва числа є дійсними і мають той самий знак, що і X.

>>> math.modf(5)

(0.0, 5.0)

>>> math.modf(4.5)

(0.5, 4.0)

>>> math.modf(-4.5)

(-0.5, -4.0)

math.fmod(X, Y). Повертає залишок від ділення X на Y. Для додатних чисел аналогічно оператору X % Y. Якщо серед чисел X, Y є відємні, то залишок обчислюється для абсолютних величин чисел X та Y, а результат матиме такий самий знак, що і X. Окрім того, більш точно працює з дійсними числами.

>>> math.fmod(7.5, 3)

1.5

>>> math.fmod(-7.5, 3)

-1.5

>>> math.fmod(7.5, -3)

1.5

>>> math.fmod(-7.5, -3)

-1.5

math.factorial(X). Повертає факторіал числа X.

>>> math.factorial(5)

120

math.fsum(iterable). Повертає суму всіх членів з iterable. Аналог вбудованої функції sum(), але math.fsum()точніша для дійсних чисел.

>>>sum([.1, .1, .1, .1, .1, .1, .1, .1, .1, .1])

0.9999999999999999

>>>math.fsum([.1, .1, .1, .1, .1, .1, .1, .1, .1, .1])

1.0

math.gcd(A, B). Повертає найбільший спільний дільник цілих чисел A та B (найбільше натуральне число, на яке ці числа діляться без остачі). math.gcd(0, 0) повертає 0.

>>>math.gcd(6,8)

2

>>>math.gcd(5,7)

1

 

Степеневі та логарифмічні функції

math.exp(X). Повертає значення eX. Аналогічно до math.e**X.

math.expm1(X). Повертає значення eX – 1. Якщо X 0 точніше, ніж math.exp(X)–1.

math.log(X, [base]). Повертає значення логарифма числа X за основою base. Якщо base не вказано, обчислюється значення натурального логарифма.

>>> math.log(8)

2.0794415416798357

>>> math.log(8,2)

3.0

math.log10(X). Повертає значення логарифма числа X за основою Аналогічно до log (x, 10).

>>> math.log10(8)

0.9030899869919435

math.log2(X). Повертає значення логарифма числа X за основою 2. Аналогічно до log (x, 2).

>>> math.log2(8)

3.0

math.log1p (X). Повертає значення натурального логарифма для (1 + X). При X 0 точніше, ніж math.log (1 + X).

math.pow (X, Y). Повертає дійсне значення XY. Для pow (1.0, A) та pow (A, 0.0) завжди повертається 1.0, навіть якщо A рівне нулю або NaN. Якщо X та Y скінченні, X від’ємне, а Y  не є цілим числом, тоді результат pow (X, Y) невизначений.

>>> math.pow(3, 2)

9.0

>>> math.pow(-3, 3)

-27.0

math.sqrt(X). Повертає значення квадратного кореня числа X.

 

Функції кутових перетворень

math.degrees(X). Конвертує радіани в градуси.

>>> math.degrees(math.pi/4)

45.0

math.radians(X). Конвертує градуси в радіани.

>>> math.radians(45)

0.7853981633974483

 

Тригонометричні функції

math.cos(X). Повертає значення косинуса числа (X вказується в радіанах).

math.sin(X). Повертає значення синуса числа (X вказується в радіанах).

math.tan(X). Повертає значення тангенса числа (X вказується в радіанах).

math.acos(X). Повертає значення арккосинуса числа в радіанах.

math.asin(X). Повертає значення арксинуса числа в радіанах.

math.atan(X). Повертає значення арктангенса числа в радіанах.

math.atan2(Y, X). Повертає значення арктангенса Y/X в радіанах.

З урахуванням чверті, в якій розташована точка (X, Y), тобто результат в межах відpi до pi.

>>> math.degrees(math.atan2(1, 1))

45.0

>>> math.degrees(math.atan2(-1, 1))

-45.0

>>> math.degrees(math.atan2(-1, -1))

-135.0

>>> math.degrees(math.atan2(1, -1))

135.0

math.hypot(X, Y). Повертає значення гіпотенузи трикутника з катетами X та Y (аналогічно до math.sqrt(x * x + y * y)).

 

Гіперболічні функції

math.cosh(X). Повертає значення гіперболічного косинуса числа.

math.sinh(X). Повертає значення гіперболічного синуса числа.

math.tanh(X). Повертає значення гіперболічного тангенса числа.

math.acosh(X). Повертає значення оберненого гіперболічного косинуса числа.

math.asinh(X). Повертає значення оберненого гіперболічного синуса числа.

math.atanh(X). Повертає значення оберненого гіперболічного тангенсу числа.

 

Приклади розв’язування задач

 

Приклад. Написати програму для розрахунку ідеальної ваги чоловіка та жінки за формулою Брокка.

Ідеальна вага для чоловіка = (зріст в сантиметрах – 100) * 1,15. Ідеальна вага для жінки = (зріст в сантиметрах – 110) * 1,15.

zrist=int(input(‘Ваш зріст в сантиметрах:’))

v_men=(zrist-100)*1.15

v_women=(zrist-110)*1.15

print(Ідеальна вага для чоловіка = ‘, v_men)

print(Ідеальна вага для жінки = ‘, v_women)

 

 

Для задання комплексного числа можна використати запис A + Bj.

>>>z=1+2j

>>>print(z) (1+2j)

Іншим способом задати комплексне число є використання функції complex([real[, imag]]), яка створює число у вигляді real + imag*j. Якщо перший параметр це рядок (а другого параметра немає), то він розглядається як запис комплексного числа. Функція complex() утворить комплексне число, що відповідає цьому рядковому значенню. Під час перетворення з рядка, важливо, щоб навколо центрального оператора + або не було пробілів.

>>>x=complex(3, 2)

>>>x

(3+2j)

>>>complex(‘3-2j’)

(3+2j)

 

Над комплексними числами можна виконувати операції: додавання, віднімання, множення, ділення і піднесення до степеня.

>>> x+z

(4+4j)

>>> x-z

(2+0j)

>>> x*z

(-1+8j)

>>> x/z

(1.4-0.8j)

>>> x**z

(-1.1122722036363393-0.012635185355335208j)

>>> x**3

(-9+46j)

З комплексного числа можна виокремити дійсну та уявну частини.

>>> z.real

1.0

>>> z.imag

2.0

 

Для виконання математичних операцій з комплексними числами може бути використана бібліотека cmath.

 

Завдання для самоперевірки

 

Завдання 1. Реалізуйте програму для обрахунку значення виразу.

 

1.

 

2.

 

3.

 

4.

 

Завдання 2. Реалізуйте програму для обрахунку значення виразу.

 

Завдання 3. Обчислити значення виразу за заданих вихідних даних, які в програмі задати як константи. Отриманий результат порівняти із вказаним правильним. Під час написання програми використати потокові операції введення-виведення та пояснювальну текстову інформацію для зручного візуального сприйняття результатів.

 

 

Ø Основні оператори мови Python можна розподілити на чотири групи: арифметичні, побітові, логічні й оператори порівняння.

Ø Арифметичні оператори: + (додавання), (віднімання), * (множення), / (ділення), // (цілочислове ділення), % (остача від цілочислового ділення), ** (піднесення до степеня).

Ø Побітові оператори: ~ (побітова інверсія), & (побітове і), | (побітове або), ^ (побітове виняткове або), << (побітовий зсув ліворуч), >> (побітовий зсув праворуч).

Ø Логічні оператори: or (логічне або), and (логічне і), not (логічне заперечення).

Ø Оператори порівняння: > (більше), < (менше), <= (не більше), >= (не менше), == (дорівнює), != (не дорівнює). Також до операторів порівняння зазвичай відносять оператор перевірки ідентичності об’єктів is і оператор перевірки неідентичності об’єктів is not.

Ø Оператор присвоювання має скорочені форми: наприклад, команду вигляду x=x+y можна записати у вигляді x+=y. Такого типу скорочені вирази можна використовувати для всіх арифметичних і побітових операторів.

Ø Функція eval() дає змогу розрахувати вираз, який у формі тексту передано аргументом функції.

Ø Для підключення модулів використовується інструкція import, після якої вказується ім’я модуля, який підключають. Під час використання змінних (функцій) із підключеного модуля ім’я модуля (через крапку) зазначається перед іменем змінної (функції).

Ø Тернарний оператор має три операнди і повертає значення залежно від істинності або хибності певної умови (один із операндів тернарного оператора).

 

Питання для перевірки засвоєних знань

1. Які операції можна виконувати з цілими числами у Python?

2. Як виконати цілочисельне ділення двох чисел?

3. Як визначити остачу від ділення у Python?

4. Як виконати операцію піднесення до степеня у Python?

5. Як округлити дійсне число до цілого у Python?

6. Як використати функцію abs() для чисел у Python?

7. Як використати модуль math для обчислення квадратного кореня числа?

8. Що таке бітові операції, і як їх використовувати у Python?

9. Які функції для роботи з цілими числами ви знаєте в Python?

Попередня тема

На початок

Наступна тема