При написанні коду може виникнути необхідність використання якихось конкретних модулів. Імпортувати модуль можна за допомогою одного рядка коду в Python. Але як бути, якщо ім’я потрібного модуля стане відомим лише під час виконання? Як ми можемо імпортувати такий модуль? Ми можемо використати вбудовану функцію __import__(), яка допомагає імпортувати модулі під час виконання коду.
Синтаксис функції __import__()
|
1 |
__import__(name, globals=None, locals=None, fromlist=(), level=0) |
Параметри функції __import__()
Функція __import__() приймає 5 параметрів:
name — ім’я модуля, який ми хочемо імпортувати;
globals та locals — визначають, як інтерпретувати name;
fromlist — назви об’єктів чи підмодулів, які потрібно імпортувати за ім’ям;
level — вказуємо, використовувати абсолютний чи відносний імпорт.
Використання функції __import__() в Python
Функція __import__() використовується для імпорту модулів та функцій під час виконання коду. Вона не набула широкого поширення, оскільки може змінити семантику оператора імпорту.
Приклад: Як працює функція __import__()?
|
1 2 |
mathematics = __import__('math', globals(), locals(), [], 0) print(mathematics.fabs(-2.5)) |
Результат:
2.5
Функцію fabs() визначено в модулі math. Ми можемо викликати цю функцію за допомогою наступного синтаксису:
|
1 2 |
import math math.fabs(x) |
Проте у цьому коді ми змінили спосіб роботи функції fabs() і можемо отримати доступ до неї за допомогою наступного синтаксису:
|
1 |
mathematics.fabs(x) |


(5 оцінок, середня: 3,80 з 5)