我的目标是检查文本文件的大小(> 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")
最佳答案
使用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")
您还可以自定义stringification通过在占位符中指定格式字符串来创建 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'
关于python - 保存带有日期变量扩展名的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53156514/