Типи даних в програмуванні

Основи програмування на Python

Дані та їх типи

Можна помітити, що все, що ми робимо, ми робимо над чимось - якимись предметами або об'єктами. Ми міняємо властивості об'єктів і їх можливості. Програми для комп'ютерів також маніпулюють якимись об'єктами (назвемо їх поки даними).

Очевидно, дані бувають різними. Дуже часто комп'ютерній програмі доводиться працювати з числами і рядками. Наприклад, на минулому уроці ми "маніпулювали" числами, виконуючи над ними арифметичні операції. Можна сказати, що операція додавання виконувала зміна першого числа на величину другого, або множення збільшувало одне число в кількість разів, відповідне другого.

Числа в свою чергу також бувають різними: цілими, дробовими, можуть мати величезне значення або дуже довгу дробову частину. При знайомстві з мовою програмування Python ми точно зіткнемося з трьома типами даних:

  • цілі числа (integer) - позитивні і негативні цілі числа, а також 0 (наприклад, 4, 687, -45, 0).
  • числа з плаваючою точкою (float point) - дробові числа (наприклад, 1.45, -3.789654, 0.00453). Примітка: роздільником цілої і дробової частини служить точка, а не кома.
  • рядки (string) - набір символів, укладених в лапки (наприклад, "ball", "What is your name?", 'dkfjUUv', '6589'). Примітка: лапки в Python можуть бути одинарними або подвійними.

Можна сказати, що операція - це виконання якихось дій над даними (операндами). Для виконання конкретних дій потрібні спеціальні інструменти - оператори.

Наприклад, символ "+" по відношенню до чисел виконує операцію складання, а по відношенню до рядків - конкатенацію (з'єднання). Парний знак ** зводить перше число в ступінь другого.

змінні

Дані зберігаються в комірках пам'яті комп'ютера. Коли ми вводимо число, воно поміщається в пам'ять. Але як дізнатися, куди саме? Як надалі звертатися до цих даними? Раніше, під час написання програм на машинній мові, звернення до осередків пам'яті здійснювали за допомогою вказівки регістрів. Але вже з появою ассемблеров, при зверненні до даних стали використовувати так звані змінні. Механізм зв'язку між змінними і даними може відрізнятися в залежності від мови програмування і типу даних. Поки досить запам'ятати, що дані зв'язуються з будь-яким ім'ям і надалі звернення до них можливо з цього імені.

У програмі на мові Python зв'язок між даними і змінними встановлюється за допомогою знака =. Така операція називається привласненням. Наприклад, вираз sq = 4 означає, що на об'єкт (дані) в певній галузі пам'яті посилається ім'я sq і звертатися до них тепер слід за цим імені.

Імена змінних можуть бути будь-якими. Однак є кілька загальних правил їх написання:

  1. Бажано давати змінним осмислені імена, що говорять про призначення даних, на які вони посилаються.
  2. Ім'я змінної не повинно збігатися з командами мови (зарезервованими ключовими словами).
  3. Ім'я змінної має починатися з букви або символу підкреслення (_).

Щоб дізнатися значення, на яке посилається змінна, перебуваючи в режимі інтерпретатора, досить її викликати (написати ім'я і натиснути Enter).

Приклад роботи з змінними в інтерактивному режимі:

Практична робота

  1. Змінної var_int надайте значення 10, var_float - значення 8.4, var_str - "No".
  2. Змініть значення, збережене в змінної var_int, збільшивши його в 3.5 рази, результат зв'яжіть зі змінною big_int.
  3. Змініть значення, збережене в змінної var_float, зменшивши його на одиницю, результат зв'яжіть з тієї ж змінної.
  4. Розділіть var_int на var_float, а потім big_int на var_float. Результат даних вираження не прив'язуйте до жодних змінним.
  5. Змініть значення змінної var_str на "NoNoYesYesYes". При формуванні нового значення використовуйте операції конкатенації (+) і повторення рядка (*).
  6. Виведіть значення всіх змінних.

Результат виконання практичної роботи

  1. Які типи даних ви знаєте? Опишіть їх.
  2. Чи можна перетворити дробове число в ціле? ціле в дробове? У яких випадках можна рядок перетворити в число?
  3. Наведіть приклади операцій. Для чого призначена операція присвоєння?
  4. Які існують правила і рекомендації для іменування змінних?