保存具有日期变量扩展名的文件
Saving a file with a date variable extension
我的目标是检查文本文件的大小(> 0 字节),如果为真,则将文件复制到另一个目录。我想通过生成日期变量向文件添加日期。我无法弄清楚的部分是如何在复制文件时添加日期变量。除了将名为 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")
使用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
对象的 stringification,例如:
>>> import datetime
>>> yesterday = datetime.date.today() - datetime.timedelta(days=1)
>>> "C:/temp2/Missing_File_{:%A}.txt".format(yesterday)
'C:/temp2/Missing_File_Sunday.txt'
我的目标是检查文本文件的大小(> 0 字节),如果为真,则将文件复制到另一个目录。我想通过生成日期变量向文件添加日期。我无法弄清楚的部分是如何在复制文件时添加日期变量。除了将名为 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")
使用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
对象的 stringification,例如:
>>> import datetime
>>> yesterday = datetime.date.today() - datetime.timedelta(days=1)
>>> "C:/temp2/Missing_File_{:%A}.txt".format(yesterday)
'C:/temp2/Missing_File_Sunday.txt'