Сохранение файла с расширением даты - PullRequest
0 голосов
/ 05 ноября 2018

Моя цель - проверить текстовый файл на размер (> 0 байт) и, если True, скопировать файл в другой каталог. Я хотел бы добавить дату в файл, создав переменную даты. Часть, которую я не могу понять, это как добавить переменную даты, когда я копирую файл. Приведенный ниже код работает нормально, за исключением добавления переменной с именем yesterday к имени файла. Любые идеи о том, как выполнить эту последнюю часть кода?

import os
import shutil
import datetime

# a variable called yesterday will be generated (yesterdays date)
today = datetime.date.today()
one_day = datetime.timedelta(days=1)
yesterday = today - one_day

# Check if file is True

file_path = r"C:\temp\Missing_File.txt"
if os.stat(file_path).st_size > 0:
    shutil.copy("C:/temp/Missing_File.txt", "C:/temp2/Missing_File.txt")

1 Ответ

0 голосов
/ 05 ноября 2018

Использование str.format():

shutil.copy("C:/temp/Missing_File.txt", "C:/temp2/Missing_File_{}.txt".format(yesterday))

Если у вас Python 3.6+, другой вариант - использовать f-string :

shutil.copy("C:/temp/Missing_File.txt", f"C:/temp2/Missing_File_{yesterday}.txt")

Вы также можете настроить строковое объекта date, указав строку формата в заполнителе, например ::

>>> import datetime
>>> yesterday = datetime.date.today() - datetime.timedelta(days=1)
>>> "C:/temp2/Missing_File_{:%A}.txt".format(yesterday)
'C:/temp2/Missing_File_Sunday.txt'
...