Модуль os в Python
Модуль os
в Python предоставляет широкие возможности для взаимодействия с операционной системой, включая работу с файловой системой. С его помощью можно создавать, удалять, перемещать файлы и директории, получать информацию о файлах, выполнять операции над путями и многое другое. В этом уроке мы рассмотрим основные функции модуля os
для работы с файловой системой.
1. Получение информации о файлах и директориях
Модуль os
предоставляет функции для получения информации о файлах и директориях, такие как проверка существования файла, определение типа объекта (файл или директория), получение списка файлов в директории и т. д.
os.path.exists(путь)
: Проверяет, существует ли файл или каталог.os.path.isdir(путь)
: Проверяет, является ли указанный путь каталогом.os.path.isfile(путь)
: Проверяет, является ли указанный путь файлом.os.chdir(путь)
: Меняет рабочий каталог на указанный.os.getcwd()
: Возвращает текущий рабочий каталог.os.listdir(путь)
: Возвращает список имен файлов и каталогов в указанном каталоге.os.path.getsize(путь)
: Возвращает размер файла в байтах.os.path.getmtime(путь)
: Возвращает время последней модификации файла.
Примеры:
import os
# Проверка существования файла или директории
print(os.path.exists('example.txt')) # Output: True (если файл существует)
# Проверка, является ли объект файлом
print(os.path.isfile('example.txt')) # Output: True (если объект является файлом)
# Проверка, является ли объект директорией
print(os.path.isdir('example')) # Output: True (если объект является директорией)
# Получение списка файлов в директории
files = os.listdir('example')
print(files)
2. Создание и удаление файлов и директорий
Модуль os
позволяет создавать и удалять файлы и директории.
os.mkdir(путь)
: Создает каталог по указанному пути.os.rmdir(путь)
: Удаляет пустой каталог.os.remove(путь)
: Удаляет файл.os.rename(старый_путь, новый_путь)
: Переименовывает файл или каталог.os.walk(путь)
: Проходит рекурсивно по каталогу и его подкаталогам, возвращая кортежи с именем каталога, списком подкаталогов и списком файлов.
Примеры:
import os
# Создание директории
os.mkdir('new_directory')
# Удаление директории
os.rmdir('new_directory')
# Создание пустого файла
with open('new_file.txt', 'w') as file:
pass
# Удаление файла
os.remove('new_file.txt')
3. Работа с путями файловой системы
Модуль os
также предоставляет функции для работы с путями файловой системы, такие как объединение путей, получение абсолютного пути, разделение пути на части и т. д.
Примеры:
import os
# Объединение путей
path = os.path.join('dir', 'subdir', 'file.txt')
print(path) # Output: 'dir/subdir/file.txt'
# Получение абсолютного пути
absolute_path = os.path.abspath('example.txt')
print(absolute_path)
# Разделение пути на части
dir_name, file_name = os.path.split(absolute_path)
print("Directory:", dir_name)
print("File name:", file_name)
Информация о системе:
os.name
: Возвращает имя операционной системы (например, "nt", "posix").os.uname()
: Возвращает информацию о системе (система, релиз, версия, имя хоста).
Другие функции:
os.system(команда)
: Выполняет команду оболочки в системе.os.getpid()
: Возвращает идентификатор текущего процесса.os.mktemp()
: Создает временный файл.
Важно:
- Перед использованием функций модуля
os
рекомендуется ознакомиться с их документацией, чтобы убедиться в корректной работе в вашей операционной системе. - Будьте осторожны при работе с системными файлами и каталогами, так как неправильные действия могут привести к проблемам с работой системы.
Модуль os
является мощным инструментом для работы с файловой системой в Python. Он позволяет выполнять различные задачи, от создания и удаления файлов до перехода по каталогам и получения информации о системе.