Модуль — це файл, який містить код для виконання певного завдання. Модуль може містити змінні, функції, класи тощо. Для створення модуля використовується файл із розширенням .py. Для імпортування модуля в Python використовується ключове слово import. Стандартна бібліотека Python містить понад 200 модулів.
Що таке модуль?
Модуль — це файл, який містить код для виконання певного завдання. Модуль може містити змінні, функції, класи тощо.
Давайте створимо модуль. Напишіть наступний код та збережіть його як файл example.py:
|
1 2 3 4 5 6 |
# Модуль в Python def add(a, b): result = a + b return result |
Тут ми визначили функцію add() всередині модуля з ім’ям example. Функція приймає два числа та повертає їх суму.
Імпорт модулів в Python
Ми можемо імпортувати визначення з одного модуля до іншого або в інтерактивний інтерпретатор Python. Для цього використовується ключове слово import. Щоб імпортувати наш раніше визначений модуль example, потрібно використати наступну команду:
|
1 |
import example |
Цей рядок коду не імпортує імена функцій, визначених у модулі example, напряму в нашу програму. Цей рядок імпортує лише ім’я модуля example.
Використовуючи ім’я модуля, ми можемо отримати доступ до функцій модуля за допомогою крапки .. Наприклад:
|
1 |
example.add(4,5) # результатом буде 9 |
Примітки:
Python має безліч стандартних модулів, з якими ви можете ознайомитись в документації Python.
Стандартні модулі можна імпортувати так само як ми імпортуємо наші власні (користувацькі) модулі.
Імпорт модулів із Cтандартної бібліотеки Python
Стандартна бібліотека Python містить понад 200 модулів. Припустимо, ми хочемо отримати значення числа Пі. Для цього потрібно імпортувати модуль math, а потім використовувати виклик math.pi. Наприклад:
|
1 2 3 4 5 |
# Імпортуємо модуль math зі Стандартної бібліотеки Python import math # Використовуємо math.pi для отримання значення числа Пі print("The value of pi is", math.pi) |
Результат:
The value of pi is 3.141592653589793
Перейменування модуля в Python
В Python ми також можемо перейменувати імпортований модуль. Наприклад:
|
1 2 3 4 |
# Імпортуємо модуль, а потім перейменовуємо його import math as m print(m.pi) |
Результат:
3.141592653589793
Тут ми перейменували модуль math на m. У деяких випадках це може заощадити час при наборі коду.
Зверніть увагу, що після перейменування ім’я math не розпізнається в нашій області видимості. Відповідно, math.pi не працюватиме, а m.pi — працюватиме.
from … import в Python
Ми можемо імпортувати певні імена з модуля, не імпортуючи модуль повністю. Наприклад:
|
1 2 3 4 |
# Імпортуємо тільки pi з модуля math from math import pi print(pi) |
Результат:
3.141592653589793
Тут ми імпортували лише об’єкт pi з модуля math.
Імпортуємо всі імена з модуля
В Python ми можемо імпортувати всі імена (визначення) із модуля, використовуючи наступну конструкцію:
|
1 2 3 4 |
# Імпортуємо всі імена з модуля math from math import * print("The value of pi is", pi) |
Ми імпортували всі визначення з модуля math. Імпорт всього вмісту модуля не є гарною практикою у програмуванні. Це може призвести до дублювання визначень ідентифікаторів. Це також може ускладнити читання коду.
Вбудована функція dir() в Python
В Python ми можемо використовувати функцію dir() для виводу списку всіх імен функцій в модулі. Наприклад, раніше ми визначили функцію add() в модулі example. Ми можемо використовувати функцію dir() з модулем example наступним чином:
|
1 |
dir(example) |
Результат:
['__builtins__',
'__cached__',
'__doc__',
'__file__',
'__initializing__',
'__loader__',
'__name__',
'__package__',
'add']
Тут ми бачимо відсортований список ідентифікаторів (разом з функцією add()) модуля example. Імена, що починаються зі знака підкреслення, є атрибутами Python (не користувацькі), що асоціюються з модулем.
Наприклад, атрибут __name__ містить ім’я модуля:
|
1 2 3 |
import example example.__name__ |
Результат:
example
Всі імена, визначені в нашому поточному просторі імен, можна дізнатися за допомогою функції dir(), просто не вказуючи аргументи:
|
1 2 3 4 5 6 |
a = 1 b = "hello" import math dir() |
Результат:
['__builtins__', '__doc__', '__name__', 'a', 'b', 'math', 'pyscripter']

(19 оцінок, середня: 4,58 з 5)