№21 Модули Python / Уроки по Python для начинающих

Предыдущий урок: Итераторы Python

Что такое модуль?

Модуль — это файл, содержащий код python, который вы хотите включить в проект.

Документацию по модулям python на русском мы собрали в разделе Модули.

Создание модуля

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

def greeting(name):
    print("Привет, " + name)

Использование модуля

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

Импортируем модуль под названием mymodule, и вызовем функцию приветствия:

import mymodule

mymodule.greeting("Андрей")

Вывод:

Привет, Андрей

Примечание: Во время использования функции из модуля, синтаксис: module_name.function_name.

Переменные в модуле

Модуль может содержать функции, как уже описано, но также и переменные всех типов (массивы, словари, объекты и т. д.).
Сохраним этот код в файл mymodule.py

person1 = {
"name": "Виктор",
"age": 36,
"country": "Россия"
}

Импортируем модуль с названием mymodule, и получим доступ к словарю person1:

import mymodule

a = mymodule.person1["age"]
print(a)

Вывод:

36

Имя модуля

Вы можете назвать файл модуля, как вам нравится, но важно, указать расширение файла .py

Переименование модуля

Вы можете создать псевдоним при импорте модуля, используя ключевое слово as.

import mymodule as mx

a = mx.person1["age"]
print(a)

Вывод:

36

Встроенные модули

В Python есть несколько встроенных модулей, которые вы можете импортировать, когда захотите.

import platform

x = platform.system()
print(x)

Вывод:

Windows

Использование функции dir()

Существует встроенная функция для перечисления всех имен функций (или имен переменных) в модуле. Функция dir().

import platform

x =  dir(platform)
print(x)

Вывод:

['DEV_NULL', '_UNIXCONFDIR', '_WIN32_CLIENT_RELEASES', '_WIN32_SERVER_RELEASES', 
 '__builtins__', '__cached__', '__copyright__', '__doc__', '__file__', 
 '__loader__', '__name__', '__package__', '__spec__', '__version__', 
 '_default_architecture', '_dist_try_harder', '_follow_symlinks', 
 '_ironpython26_sys_version_parser', '_ironpython_sys_version_parser', 
 '_java_getprop', '_libc_search', '_linux_distribution', '_lsb_release_version',
 '_mac_ver_xml', '_node', '_norm_version', '_parse_release_file', '_platform',
 '_platform_cache', '_pypy_sys_version_parser', '_release_filename', 
 '_release_version', '_supported_dists', '_sys_version', '_sys_version_cache',
 '_sys_version_parser', '_syscmd_file', '_syscmd_uname', '_syscmd_ver', 
 '_uname_cache', '_ver_output', 'architecture', 'collections', 'dist', 
 'java_ver', 'libc_ver', 'linux_distribution', 'mac_ver', 'machine', 'node',
 'os', 'platform', 'popen', 'processor', 'python_branch', 'python_build', 
 'python_compiler', 'python_implementation', 'python_revision', 'python_version', 
 'python_version_tuple', 're', 'release', 'subprocess', 'sys', 'system', 
 'system_alias', 'uname', 'uname_result', 'version', 'warnings', 'win32_ver']

Примечание: Функцию dir() можно использовать на всех модулях, включая те, которые вы создаете сами.

Импорт из модуля

Вы можете импортировать модуль только частично, используя ключевое слово from

def greeting(name):
    print("Привет, " + name) 
person1  = {
"name": "Виктор",
"age": 36,
"country": "Россия"
}  

Импортируем из модуля словарь person1:

from mymodule import person1 
print (person1["age"])

Вывод:

36

Примечание: При импорте с использованием ключевого слова from не используйте имя модуля при обращении к элементам. Пример: person1["age"], а не mymodule.person1["age"]

Далее: Даты в Python