Рубріки: Основи

Типи даних у Python: повний огляд та приклади коду

Дмитро Сімагін

Завдяки динамічній типізації Python може застосовуватися в різних сферах розробки: від простих веб-додатків до Data Science та новаторських ШІ-моделей. Однією з важливих особливостей мови Python є система типів даних, яка помітно спрощує роботу з об’єктами. Зміст цієї статті присвячено основним типам даних у Python, їх застосуванню та особливостям.

Що таке типи даних

Тип даних — це класифікація, за якою визначаються значення, що використовуються в змінній, та різновид операцій, допустимих у роботі над цими значеннями. Список типів даних, що підтримуються Python:

  • числові типи;
  • логічні типи;
  • послідовності;
  • множини;
  • відображення.

Всі ці категорії дозволяють описувати дані різної складності, що забезпечує гнучкість у розробці.

Динамічна типізація

Оскільки Python використовує динамічну типізацію, на практиці це призводить до того, що змінні не потребують явного оголошення типу. Він визначається автоматично на основі значення, що присвоюється. Розглянемо фрагмент коду:

x = 20     # x – це ціле число
x = "Hello" # тепер x – це рядок

 

Числові типи

Числа в мові Python представлені кількома типами даних: int, float та complex. Давайте поглянемо на них.

int

Цілі числа (int) — це необмежені за розміром цілі значення. Вони є одними з найпоширеніших типів даних у цій мові програмування. Приклад коду:

x = 42     # Ціле число
y = -10 | # Від'ємне ціле число

 

Цілі числа в Пайтоні можуть бути дуже великого розміру, що вигідно відрізняється від інших мов програмування. Нуль теж відноситься до типу даних int.

float

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

pi = 3.14159 # Число з плаваючою комою

 

Виконуючи операції з типом даних float, можна зіткнутися з некритичними помилками в округленні. Вони виникають через те, що пам’ять ПК відображає дробові числа, округляючи їх відповідно до власних правил.

complex

Комплексні числа або тип complex у мові Python складаються з реальної та уявної частин. Їх записують за принципом real + imag * j , де real + і imag — це числа з плаваючою комою, а j — позначення уявної частини. Приклад коду:

z = 8 + 11j  # Комплексне число

 

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

Логічні типи

За допомогою типу даних bool можна відображати логічні значення True і False. Зазвичай він використовується для показу значень істинності виразів.

a = True
type(a)

b = False
type(b)

 

Щоб повернути значення типу bool використовують оператори порівняння, такі як ==, !=, >, <.

Рядки (str)

Рядки (str) — це тип даних у вигляді послідовності символів, необхідних для роботи з текстом. Такі послідовності відкриваються та закриваються лапками.

message = "Hello, World!"

 

З рядками можна виконувати такі операції:

  • Конкатенація: складання рядків оператором +.
  • Повторення: множення рядка на число.
  • Вилучення символів: доступ до елементів рядка за індексом.

 

s = "Python"
print(s[0]) # 'P'
print(s[-1]) # 'n'

 

Вміст рядків не можна змінити після створення. Але ви завжди можете створити новий рядок.

Поширені методи рядків:

  • upper() та lower() — зміна регістру.
  • split() — поділ рядка.
  • replace() — заміна підрядка.

 

Послідовності

Колекції елементів можна впорядкувати за допомогою послідовності. У мові Python є кілька типів послідовностей: списки, кортежі та діапазони.

Списки (list)

Список — це послідовність, яка може змінюватись та містити елементи різних типів даних. Щоб оголосити список, достатньо відкрити квадратні дужки.

numbers = [10, 20, 30, 40, 50]

 

Кортеж (tuple)

Кортеж — це послідовність, яку, на відміну списку, не можна змінити. Кортежі оголошують за допомогою круглих дужок.

coordinates = (20, 30)

 

Оскільки кортежі незмінні, вони мають обмежену кількість операцій, порівняно зі списками. До плюсів тут варто віднести те, що вони займають менше пам’яті та захищені від випадкової зміни.

Діапазони (range)

Діапазон (range) — це спеціальний тип даних, що є послідовністю цілих чисел. Їх часто використовують у циклах.

r = range(1, 10)

 

Множина (set)

Множина — це набір невпорядкованих елементів, кожен з яких представлений лише один раз. Їх оголошують фігурними дужками.

unique_numbers = {10, 20, 30, 40, 50}

 

Множина може використовуватися в різних операціях, включаючи об’єднання, додавання або виключення, різниця і перетин.

a = {10, 20, 30}
b = {30, 40, 50}
print(a & b) # {30} (перетин)

 

Словник (dict)

Словник — це невпорядкований набір пар «ключ-значення», представлений типом dict. Як і множину, словник оголошують фігурними дужками.

student = {"name": "Jane", "age": 15, "grade": "B"}

 

Ключі у словнику повинен мати властивості унікальності та незмінності. Значення можуть бути будь-якими об’єктами.

None

None — це тип даних, що позначає відсутність значення або порожнечу. На відміну від False, нуля або порожнього рядка, None — це окремий тип, не еквівалентним іншим типам.

x = None

 

Як перевірити тип даних у Python

Щоб перевірити тип даних об’єкта, Python має відмінну вбудовану функцію type(). Вона повертає тип переданого об’єкта, залежно від переданих аргументів.

x = 43
print(type(x)) # <class 'int'>

y = "Hello"
print(type(y)) # <class 'str'>

 

Незважаючи на те, що type() повертає точний тип об’єкта, якщо вам потрібно перевірити відповідність об’єкта екземпляру конкретного класу, рекомендується використовувати isinstance(). Це найбільш оптимальний спосіб, оскільки тут функція додатково перевіряє об’єкт класу на наслідування. Приклад коду з isinstance():

x = 43
print(isinstance(x, int))  # True

y = "Hello"
print(isinstance(y, str)) # True

 

Якщо вам потрібно передати типи у вигляді кортежу, isinstance() може перевірити їх приналежність до кількох типів:

x = 3.14
print(isinstance(x, (int, float))) # True

 

Відмінність між type() та isinstance()

Щоб не виникла плутанина, пам’ятайте, що функція type() перевіряє точний тип об’єкта, а isinstance() перевіряє відповідність об’єкта екземпляру зазначеного класу або його підкласів.

Висновок

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

Останні статті

В оновлений Cursor 2.0 додано Composer — модель для кодування, яка в 4 рази швидша за аналоги

Агентний редактор коду Cursor оновлено до версії 2.0. Головними новинками релізу стала оптимізована для кодування…

30.10.2025

Популярність TypeScript на GitHub перевершує Python та JavaScript

Згідно зі статистичним звітом Octovers 2025, щосекунди до GitHub в середньому приєднується більше одного нового…

30.10.2025

Дуров представив нову децентралізовану мережу Cocoon

Під час свого виступу на конференції Blockchain Life 2025 в Дубаї засновник Telegram Павло Дуров…

29.10.2025

Єдиноріг з українським корінням Grammarly отримав нову назву Superhuman і запустив ШІ-помічника

Компанія Grammarly, яку в 2009 році заснували три українці: Алекс Шевченко, Макс Литвин і Дмитро…

29.10.2025

Microsoft випустила інструмент Copilot App Builder, який створює та розгортає програми «за лічені хвилини»

Microsoft анонсувала оновлення для корпоративної версії Microsoft 365 Copilot під назвою App Builder, завдяки якому…

29.10.2025

Проект Міноборони запрошує до себе Python- і .NET-розробників

Центр масштабування технологічних рішень (ЦМТР) Міністерства оборони України відкриває прийом цивільних осіб на військову службу…

29.10.2025