Как получить «Даты» файла,а не «Дату создания»?

В Python можно получить даты файла с помощью модуля os, который предоставляет функции для работы с операционной системой. Для получения даты создания, модификации и доступа к файлу можно использовать функцию os.stat(). Однако, важно отметить, что доступность этих атрибутов может варьироваться в зависимости от операционной системы.

Вот пример кода, который позволит получить даты файла:

import os

def get_file_dates(file_path):
    try:
        file_stat = os.stat(file_path)
        creation_date = file_stat.st_ctime
        modification_date = file_stat.st_mtime
        access_date = file_stat.st_atime
        
        return {
            'Creation Date': creation_date,
            'Modification Date': modification_date,
            'Access Date': access_date
        }
    except OSError:
        return None

file_path = '/путь/к/файлу'
file_dates = get_file_dates(file_path)

if file_dates is not None:
    print('Dates of file {}:'.format(file_path))
    for date_type, date in file_dates.items():
        print('{}: {}'.format(date_type, date))
else:
    print('Unable to retrieve file dates.')

В этом примере функция get_file_dates() принимает путь к файлу, вызывает функцию os.stat(), а затем возвращает словарь с датами файла. Затем простой код проверяет, успешно ли удалось получить даты файла, и выводит их в консоль.

Обратите внимание, что даты возвращаются в формате времени POSIX, который представляет количество секунд, прошедших с полуночи 1 января 1970 года. Если вам нужны даты в более читаемом формате, вы можете использовать модуль datetime для преобразования этих значений в удобный формат:

import os
from datetime import datetime

def get_file_dates(file_path):
    try:
        file_stat = os.stat(file_path)
        creation_date = datetime.fromtimestamp(file_stat.st_ctime)
        modification_date = datetime.fromtimestamp(file_stat.st_mtime)
        access_date = datetime.fromtimestamp(file_stat.st_atime)
        
        return {
            'Creation Date': creation_date,
            'Modification Date': modification_date,
            'Access Date': access_date
        }
    except OSError:
        return None

file_path = '/путь/к/файлу'
file_dates = get_file_dates(file_path)

if file_dates is not None:
    print('Dates of file {}:'.format(file_path))
    for date_type, date in file_dates.items():
        print('{}: {}'.format(date_type, date))
else:
    print('Unable to retrieve file dates.')

В этой версии кода значения дат преобразуются в объекты datetime, используя fromtimestamp(). Затем они выводятся в более удобочитаемом формате.