Ниже привожу решение задачи с подробным пошаговым объяснением.
Шаг 1. Импортируем необходимые модули. Для работы с датой и временем используем модуль datetime, для ожидания выполнения – модуль time, а для работы с файловой системой – модуль os.
Шаг 2. Создаем каталог log в текущем рабочем каталоге с помощью функции os.mkdir. Если ка...
if not os.path.exists(log):
os.mkdir(log)
with open(log/changes.txt, w) as file:
dateow = datetime.now().replace(microsecond=0)
file.write(f{dateow})
Шаг 4: Ждем 10 секунд
time.sleep(10)
os.rename(log/changes.txt, log/changesrchive.txt)
Пошаговое объяснение:
- Импортируем модули:
- datetime для работы с датой и временем;
- time для использования функции time.sleep;
- os для работы с файловой системой (создание папок, переименование файлов).
-
Проверяем, существует ли каталог log. Если нет, создаем его с помощью os.mkdir.
-
Открываем файл log/changes.txt в режиме записи. В теле оператора with:
- Получаем текущее время и дату с помощью datetime.now(), убираем микросекунды вызовом replace(microsecond=0) для более аккуратного вывода.
- Записываем полученное значение в файл.
-
Сразу после записи файл «засыпает» на 10 секунд с помощью time.sleep(10).
-
После истечения паузы используя функцию os.rename переименовывается файл changes.txt в changesrchive.txt. Таким образом, журнал изменений переносится в архив.
Данный скрипт выполняет все требования задачи.