Python. Літерали. Створення (генерування) об’єкту деякого типу. Базові типи об’єктів

Літерали. Створення (генерування) об’єкту деякого типу. Базові типи об’єктів


Зміст


1. Поняття літералу в Python. Особливості використання літералів. Приклади літералів

У мові програмування Python літерал – це вираз (або константа), що створює (генерує) об’єкт. Якщо в тексті програми зустрічається літерал, то для цього літералу створюється окремий об’єкт деякого типу. Тобто, система генерує відповідний код, що створює об’єкт який містить значення цього літералу. Створений об’єкт має визначений час існування.

На відміну від інших мов програмування (C++, C# та інших) у мові Python термін “константа” означає, що літерали не є об’єктами які не можна змінювати. Так звані об’єкти-константи в Python можуть бути змінені.

Приклади літералів:

1234
2.71
1+2j
'Hello world!'
[1, 3, [2, 4, 6]]
{ 'Sun', 'Mon', 'Tue', 'Wed' }
set('jklmn')

 

2. Генерування об’єкту. Поняття вбудованого типу об’єкту

У мові Python все, що використовується у програмі є об’єктом. Тобто для кожного рядка програмного коду система генерує відповідний об’єкт. Наприклад, об’єкти генеруються для:

  • цілого числа;
  • рядка символів;
  • списку;
  • файлу;
  • функції;
  • модуля;
  • класу;
  • інших елементів мови.

Кожен об’єкт має свою власну поведінку. Об’єкти створюються з допомогою інструкцій та виразів.

Мова Python містить набір власних вбудованих типів об’єктів. При використанні такого типу генерується об’єкт. Наприклад, при використанні у програмі літерала-рядка

'Hello world!'

створюється (генерується) об’єкт рядкового типу зі значенням ‘Hello world!’.

 

3. Базові (вбудовані) типи об’єктів у мові Python

Нижче наведено перелік найбільш використовуваних базових типів об’єктів.

Тип об’єкту

Літерал

Число 12, 2.855, 1+2j
Рядок ‘Sunday’, “Monday”
Список [1,2, [3, 4 [5]]], [13, ‘Text’]
Словник { ‘abc’, ‘abcd’, ‘abd’ }
Кортеж (8, ‘bestprog’)
Файл filename=open(‘myfile.txt’, ‘r’)
Множина set(‘jklmn’), { ‘j’, ‘k’, ‘l’, ‘m’, ‘n’ }
Інші типи None, True, об’єкти-шаблонів та інше

З кожним створеним об’єктом асоціюється власний набір операцій. Наприклад, для рядків можна виконувати тільки операції над рядками, для числових об’єктів можна виконувати допустимі операції над числами.

 

4. Чи існує у мові Python конструкція оголошення типу для об’єкту?

Ні, не існує. Тип створюваного об’єкту визначається синтаксисом виразу що виконується. Іншими словами, синтаксис виразу задає тип створюваного і використовуваного об’єкту. Джерелом типу є вираз.

 

5. Що означає термін “динамічна типізація об’єкту”?

У Python термін “динамічна типізація об’єкту” означає, що тип даних об’єкту визначається автоматично і їх не потрібно оголошувати в програмному коді.

 

6. Що в мові Python означає термін “строга типізація об’єкту”?

Термін “строга типізація об’єкту” означає, що після створення об’єкту деякого типу, над цим об’єктом можна виконувати тільки ті строго визначені операції, які є застосовні до його типу.

 


Зв’язані теми