Программа курса:
Получение информации о файле
Помимо работы с путями, os.path включает функции для получения свойств файла, а именно:
os.path.getatime(path)- возвращает время последнего доступа к файлу или каталогу, указанному вpath. Возвращаемое значение представляет собой число типаfloat, указывающее количество секунд с начала эпохи Unix (смотрите модульtime).os.path.getmtime(path)- возвращает время последней модификации файла или каталога, указанному вpath. Возвращаемое значение представляет собой число типаfloat, указывающее количество секунд с начала эпохи Unix (смотрите модульtime).os.path.getctime(path)- возвращает время, которое в некоторых системах, например Unix, является временем последнего изменения метаданных, а в Windows - временем создания файла или каталога, указанного вpath. Возвращаемое значение представляет собой число типаfloat, указывающее количество секунд с начала эпохи Unix (смотрите модульtime).
У всех трех функций одинаковы тип возвращаемого значения - float, обозначающее количество секунд, прошедших с начала эпохи:
import os
print('File :', __file__)
print('Access time :', os.path.getatime(__file__))
print('Modified time:', os.path.getmtime(__file__))
print('Change time :', os.path.getctime(__file__))В результате получим следующий ответ:
File : /Volumes/Mac SSD/Project/PyHub/os_project/main.py
Access time : 1730213434.0
Modified time: 1730546778.76
Change time : 1730546778.76В примере выше мы получаем информацию о текущем модуле, из которого запущена наша программа. Для этого мы используем специальную переменную __file__. Обратите внимание, что информация о времени доступа и изменений файла отображается в виде вещественного числа. Для преобразования данного значений в объект времени необходимо воспользоваться функцией ctime из модуля time.
import os
import time
print('File :', __file__)
print('Access time :', time.ctime(os.path.getatime(__file__)))
print('Modified time:', time.ctime(os.path.getmtime(__file__)))
print('Change time :', time.ctime(os.path.getctime(__file__)))Получим следующий результат:
File : /Volumes/Mac SSD/Project/PyHub/os_project/main.py
Access time : Tue Oct 29 17:50:34 2024
Modified time: Sat Nov 2 14:27:56 2024
Change time : Sat Nov 2 14:27:56 2024Добавим еще вызов функции os.path.getsize(path), которая возвращает размер файла в байтах, и получим практически исчерпывающую информацию о файле.
import os
import time
print('File :', __file__)
print('Access time :', time.ctime(os.path.getatime(__file__)))
print('Modified time:', time.ctime(os.path.getmtime(__file__)))
print('Change time :', time.ctime(os.path.getctime(__file__)))
print('Size :', os.path.getsize(__file__))Получим размер текущего файла:
File : /Volumes/Mac SSD/Project/PyHub/os_project/main.py
Access time : Tue Oct 29 17:50:34 2024
Modified time: Sat Nov 2 14:28:58 2024
Change time : Sat Nov 2 14:28:58 2024
Size : 299Все перечисленные в этом разделе функции, а должны принимать путь к существующему файлу. В случае отсутствия файла на диске произойдет исключение FileNotFoundError