Модули

Средний уровень Python для разработчиков

Jasmin Ludolf

Senior Data Science Content Developer

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

  • Модули — это скрипты Python
    • Файлы с расширением .py
    • Содержат функции и атрибуты
    • Могут включать другие модули

$$

$$

$$

  • Позволяют не переписывать уже существующий код!

Мужчина смотрит в зеркало, видя бесконечные отражения

Средний уровень Python для разработчиков

Модули Python

  • os:
    • Взаимодействие с операционной системой
    • Просмотр текущей директории
    • Список доступных файлов
    • Доступ к переменным окружения
  • string:
    • Упрощает обработку текста

Модули Python

Средний уровень Python для разработчиков

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

# General syntax
import <module_name>
# Import the os module
import os
# Check the type
print(type(os))
<class 'module'>
Средний уровень Python для разработчиков

Поиск функций модуля

# Call help()
# Warning - will return a very large output!
print(help(os))
Help on module os:

NAME
    os - OS routines for NT or Posix depending on what system we're on.

MODULE REFERENCE
    https://docs.python.org/3.12/library/os.html
    ...
Средний уровень Python для разработчиков

Получение текущей рабочей директории

# Using an os function
print(os.getcwd())
/home/courses/intermediate_python_for_developers

$$

  • Удобно, если директория понадобится позже
# Assign to a variable
work_dir = os.getcwd()
Средний уровень Python для разработчиков

Смена директории

# Changing directory
os.chdir("/home/courses")
# Check the current directory
print(os.getcwd())
/home/courses
# Confirm work_dir has not changed
print(work_dir)
/home/courses/intermediate_python_for_developers
Средний уровень Python для разработчиков

Атрибуты модуля

  • Атрибуты возвращают значения
  • Функции выполняют действия
  • С атрибутами скобки не используются
# Get the local environment
print(os.environ)
environ{'PATH': '/usr/local/bin',
        'TERM': 'xterm',
        'HOSTNAME': '097a0fe4-d6ce-4325-a6e2-1d0ce2800c2b',
        'TZ': 'Europe/Brussels',
        'LANG': 'en_US.UTF-8',
         ...
Средний уровень Python для разработчиков

Модуль string

import string


print(string.ascii_lowercase)
abcdefghijklmnopqrstuvwxyz

$$

  • Проверка строки на наличие букв, цифр или специальных символов

$$

  • Удобно для валидации пользовательского ввода 💡
print(string.digits)
0123456789

$$

print(string.punctuation)
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
Средний уровень Python для разработчиков

Давайте потренируемся!

Средний уровень Python для разработчиков

Preparing Video For Download...