这是我的代码:
# Fetch today's date
Date = datetime.today().strftime('%Y-%m-%d-%H.%M.%S')
# Variable for log file
LogFile = os.getcwd()
print(LogFile)
os.mkdir("Logs12")
f = open("Password_Expiry_Date_Log_"+(Date)+".txt", "w+")
#Date Calculations
Date_Before = Date.datetime(Days_Before)
Days_After = Date.datetime(Days_After)
当我尝试初始化变量'Date_Before'时,出现错误AttributeError:'str'对象没有属性'datetime'。但是,我需要日期为字符串格式才能写入文本文件名。有什么解决方法吗?
提前致谢。
问题来源:stackoverflow
这个问题原因很简单呢。
字符串没有属性datetime
你可以先对字符串进行类型转换datatime
您可以这样做:
from datetime import datetime, timedelta
# Fetch today's date
date = datetime.today()
string_date = date.strftime('%Y-%m-%d-%H.%M.%S')
# Variable for log file
log_file = os.getcwd()
print(log_file)
os.mkdir("Logs12")
f = open(f"Password_Expiry_Date_Log_{string_date}.txt", "w+")
f.close()
#Date Calculations
date_before = datetime.today() - timedelta(days=1)
days_after = datetime.today() + timedelta(days=1)
我还更新了您的字符串名称以符合PEP8
编辑:我还改善了您的语法,请记住,您始终需要关闭文件。
回答来源:stackoverflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。