我的目的是检查文本文件的大小(> 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")
答案 0 :(得分:2)
使用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'