Импорт файлов в Python: подробное руководство с примерами кода

В Python импорт файлов из одного каталога — обычная задача, позволяющая повторно использовать код и получать доступ к функциям, классам или переменным, определенным в других файлах. В этой статье мы рассмотрим несколько методов импорта файлов из одного каталога, а также примеры кода для каждого метода.

Метод 1: импорт определенного файла
Чтобы импортировать определенный файл, вы можете использовать оператор import, за которым следует имя файла (без расширения файла). Допустим, у нас есть файл с именем module.pyв том же каталоге. Вот пример:

import module

Метод 2: импорт определенного файла с псевдонимом
Если вы хотите импортировать файл, но присвоить ему другое имя (псевдоним), чтобы избежать конфликтов имен, вы можете использовать ключевое слово as. Вот пример:

import module as md

Метод 3: импорт определенных функций или переменных из файла
Иногда вам нужно импортировать только определенные функции или переменные из файла, а не импортировать весь файл. Этого можно добиться, используя ключевое слово from. Вот пример:

from module import function_name, variable_name

Метод 4: импорт всех функций и переменных из файла
Чтобы импортировать все функции и переменные из файла, вы можете использовать подстановочный знак *. Однако обычно рекомендуется импортировать только то, что вам нужно, чтобы избежать загрязнения пространства имен. Вот пример:

from module import *

Метод 5: импорт файла относительно текущего файла
Если файл, который вы хотите импортировать, находится в другом каталоге относительно текущего файла, вы можете использовать точечную запись, чтобы указать относительный путь. Вот пример:

from .subdirectory import module

Метод 6: динамический импорт всех файлов в одном каталоге
Если вы хотите динамически импортировать все файлы в одном каталоге (т. е. без явного указания имен файлов), вы можете использовать osмодуль и перебираем файлы. Вот пример:

import os
import glob
directory = os.path.dirname(__file__)
for file in glob.glob(directory + "/*.py"):
    module_name = os.path.basename(file)[:-3]  # Remove the ".py" extension
    __import__(module_name)

В этой статье мы рассмотрели несколько методов импорта файлов из одного каталога в Python. Мы рассмотрели импорт определенных файлов, использование псевдонимов, импорт определенных функций или переменных, импорт всех функций и переменных, импорт файлов относительно текущего файла и динамический импорт всех файлов. Каждый метод служит определенной цели в зависимости от ваших требований. Освоив эти методы импорта, вы сможете эффективно организовывать и повторно использовать свой код.