os

Модуль позволяет работать с файлами и папками.

Русские названия файлов и папок возвращаются и принимаются всеми функциями этого модуля в кодировке UTF-8, поэтому необходимо использовать функции для перекодирования строк - методы decode и encode.

name

os.name

название версии модуля, зависит от операционной системы

os.name
# 'nt' - windows xp

environ

os.environ

Словарь переменных окружения

os.environ
"""
{
    'HOME': 'c:\\',
}
"""

access()

os.access(<путь>, <режим>)

проверка прав доступа к файлу или папке.

В параметре режим могут быть указаны следующие константы:

  • os.F_OK - проверка наличия пути

  • os.R_OK - проверка на возможность чтения

  • os.W_OK - проверка на возможность записи

  • os.X_OK - проверка на возможность выполнения

chdir()

os.chdir(path)
Parameters

path (str) – путь к каталогу

Изменяет текущий рабочий каталог приложения на указанный

chmod()

os.chmod(path, mode)

Изменяет права доступа файла.

import stat

os.chmod('file.txt', 0o777)
os.chmod('file.txt', stat.s_IRUSR)

chown()

os.chown(path, uid, gid)

Изменят владельца файла

Note

linux

os.chown('file.txt', 5, 22)

getcwd()

os.getcwd()

Возвращает рабочий путь приложения

os.getcwd()
# 'c:\\'

getenv()

os.getenv(env_param_name)

Возвращает значение переменной окружения

os.getenv('HOME')
# 'c:\\'

listdir()

os.listdir(path)

Возвращает список имен файлов и папок в указанной папке

os.listdir('/home/ilnurgi/')
# ['.bashrc']

mkdir()

os.mkdir(path[, access=0o777])
  • path - путь к каталогу

  • access - права доступа

Создает папку по указанному пути

makedirs()

os.makedirs(path)

Аналогичен функции .. py:method::’mkdir’, но автоматический создает промежуточные папки

remove()

os.remove(path)

Удаляет файл

Возбуждает исключение WindowsError, если файл удалить нельзя

os.remove("1.txt")

rmdir()

os.rmdir(path)
Parameters

path (str) – путь к каталогу

Удаляет папку по указанному пути

removedirs()

os.removedirs(path)

Аналогичен функции rmdir, но автоматический удаляет все родительские пустые папки

rename()

os.rename(src, dst)
  • src - исходный путь

  • dst - путь назначения

Переименовывает файл

Возбуждает исключение WindowsError - если файл не удалось найти или новый файл уже существует

os.rename("path1/1.txt", "path2/1.txt")

system()

os.system(command)

Выполняет команду в терминале

os.system('echo ilnurgi')
# ilnurgi

exit_code = os.system('cd ~')
# 0

exit_code = os.system('cd blablalba')
# 256

stat()

os.stat(path)

Возвращает состояние о файле, объект stat_result, который в зависимости от типа операционной системы содержит разные атрибуты.

tempname()

os.tempname([path[, prefix]])

Возвращает уникальный путь для создания временных файлов.

utime()

os.utime(path[, (atime=now, mtime=now)])
Parameters
  • path (str) – путь к файлу

  • atime (int) – время последнего доступа в секндах

Path int mtime

время изменения в секундах

Raises

WindowsError – если файл не найден

обновляет время последнего достпуа и время изменения

walk()

os.walk(path[, topdown=True][, onerror=None][, followlinks=False])
Parameters
  • path (str) – путь к начальному каталогу

  • topdown (bool) – задает последовательность обхода каталогов

Возвращает итератор, на каждой итерации возвращает кортеж (текущий каталог, список каталогов и список файлов)

close()

os.close(<дескриптор>)

закрывает файл

dup()

os.dup(<дескриптор>)

возвращает дубликат дескриптора

fdopen()

os.fdopen(<дескриптор>[, <режим>[, <размер буфера>]])

возвращает файловый объект по указанному дескриптору

lseek()

os.lseek(<дескриптор>, <смещение>, <позиция>)

устанавливает указатель в позицию, имеюущий указанное смещение относительной указанной позиции

в параметре позици могут быть указаны следующие значения:

  • os.SEEK_SET или 0 - начало файла

  • os.SEEK_CUR или 1 - текущая позиция укзаталея

  • os.SEEK_END или 2 - конец файла

open()

os.open(<путь к файлу>, <режим>[, mode=0o777])

Открывает файл и возвращает целочисленный дескриптор

В параметре <режим> в операционной системе windows могут быть указаны следующие флаги (или их комбинации через символ |):

  • os.O_RDONLY - чтение

  • os.O_WRONLY - запись

  • os.O_RDWR - чтение и запись

  • os.O_APPEND - добавление в конец файла

  • os.O_CREATE - создать файл, если он не существует

  • os.O_TRUNC - очистить содержимое файла

  • os.O_BINARY - файл будет открыт в бинарном режиме

  • os.O_TEXT - файл будет открыт в текстовом режиме

read()

os.read(<дескриптор>, <количество байтов>)

читает из файла указанное количество байтов

write()

os.write(<дескриптор>, <последовательность байтов>)

записывает последовательность байтов в файл