news
Новый дата-центр TOR3 в Канаде
KI
24 ноября 2022
Обновлено 24 ноября 2022

Импорт модулей в Python 3

Python Ubuntu

Введение

Python предоставляет различные функции. Рассмотрим несколько встроенных функций:

  • print() – для вывода данных;
  • abs() – для возвращения абсолютного значения числа;
  • int() – для преобразования другого типа данных в целое число;
  • len() – возвращает длину последовательности либо коллекции.

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

Когда мы импортируем модуль test, интерпретатор ищет встроенный модуль. Если не находит, то ищет файл test.py в директории, которую получает из переменной sys.path.
В этой инструкции будет рассмотрено проверка, установка, импорт и изменение длинных названий модулей с функциями.

Подготовка к импорту

Необходимо воспользоваться нашей инструкцией, чтобы заранее подготовиться перед началом работы. Необходимо обновить индекс пакетов и обновить пакеты программного обеспечения, которые требуются.
Важно! Выполняйте от имени пользователя с правами доступа на sudo. Если работаете на боевом сервере, чтобы не нанести вред своим данным в сервере.

Проверка для установки модулей

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

python3

Откроется командный интерпретатор и после “>>>” сможете выполнять разные функции.
Для проверки активируем виртуальную среду с помощью:

source /testing/testingv/bin/activate
python3

Перед именем появится префикс (testingv), как показано и войдём в командный интерпретатор Python, как показано на рисунке 1.

1
Рисунок 1 – Активация виртуальной среды и командный интерпретатор

Импортируем два модуля “math” и “matplotlib”. Math – является встроенным модулем для математических вычислений и команда должна выполнится без ошибки. Matplotlib – библиотека для работы с 2D-графикой, результаты можем посмотреть на рисунке 2.

2
Рисунок 2 – Ошибка при импорте matplotlib

Выйдем из командного интерпретатора и с помощью pip3 (командный интерпретатор для установки библиотек), установим matplotlib.

exit() – выход из командного интерпретатору;
pip3 install matplotlib

Результат приведён на рисунке 3.

3
Рисунок 3 – Установка matplotlib

Заново попробуем заново импортировать модули и получаем успешный результат, как показано на рисунке 4.

import math
import matplotlib
4
Рисунок 4 – Успешный импорт модулей

Считаем первый шаг выполнен. Смогли установить модуль с использованием pip3 и успешно выполнили импорт.

Импортирование модулей

Выполним выход из командного интерпретатора и создадим файл testing_random.py. Строка с импортированием модулей вставляем в самой верхней части кода или же под шебангом. Шебанг – это #!/usr/bin/env python3 - выполнить файл как программу на Python, используя среду для получения пути к файлу интерпретатора. Импортируем библиотеку random для генерации случайных чисел.

#!/usr/bin/env python3
import random

С импортированием модулей открывается доступ к его функциям. Перед выполнением функции для начала указывается название модуля, ставится точка и указываем название функции. Рассмотрим пример генерации случайных чисел 7 раз от 5 до 15, с использованием функции randint, как показано в следующих строках кода.

import random
print("Результат:")
for i in range(7):
print(random.randint(5, 15))

Запустим файл с помощью “python3 testing_random.py”. При выходе получаем 7 столбцов с разными сгенерированными значениями. Например, в нашем случае это следующие данные:

Результат:
6
14
14
12
12
12
12

При этом обратите внимание, данные не должны быть ниже 5 и не выше 15. В случае использования других модулей, следует импортировать другие модули в начале кода.

import random
import math

Подредактируем код, при получении результата укажем 7 столбцов сгенерированных данных от 5 до 15, и добавим вывод число Пи.

import random
import math
print("Результат:")
for i in range(7):
print(random.randint(5,15))
print(math.pi)

При выполнении данного кода получим следующие данные:

Результат:
9
13
12
15
7
14
13
3.141592653589793

Также с помощью import есть возможность импортировать сразу несколько модулей.

Использование from ... import

Оператор from полезен тем, что нам не обязательно указывать название модуля перед использованием функции. Данный процесс упрощает скорость написания кода. В начале указываем какую функцию импортируем из модуля и пишем код. Рассмотрим упрощенный вариант нашего предыдущего кода и результат показан на рисунке 5:

from math import pi
from random import randint
print("Результат")
for i in range(7):
print(randint(5,15))
print(pi)
5
Рисунок 5 – Одинаковый процесс выполнения кода

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

Изменение названия модуля и функций

В Python вполне можно заменить название модуля на более короткое название с помощью “as” в начале кода. Данным случаем необходимо воспользоваться, если название модуля уже существует в коде. Также можно заменить модуль с длинным названием, которым мы пользуемся чаще. Пример рассмотрен в следующей строке кода:

import math as m
print(m.pi)
print(m.e)

Результат приведён на рисунке 6.

6
Рисунок 6 – Результат выполненного кода

Вывод чисел констант Пи и Экспонента.
Также с помощью “as” можно скоротать название matplotlib.pyplot, например на pyplt. Можно ознакомиться в официальном руководстве по использованию модуля matplotlib.

Выводы

В инструкции рассмотрели такие возможности, как:

  • Импорт модуля;
  • Использование функции с использованием названия добавленного модуля;
  • Импортирование функции из модуля;
  • Использование функции без названия модуля;
  • Изменение названия модуля;

 

Оценка:
4 из 5
Аverage rating : 4.6
Оценок: 5
191028 Санкт-Петербург Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99
700 300
ООО «ИТГЛОБАЛКОМ ЛАБС»
700 300