AttributeError: у объекта 'str' нет атрибута 'datetime': Python - PullRequest
0 голосов
/ 13 марта 2020

Это мой код:

# 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'. Однако мне нужно, чтобы дата была в строковом формате для записи в текстовое имя файла. Есть ли обходной путь для этого?

Заранее спасибо.

1 Ответ

1 голос
/ 13 марта 2020

Вы можете сделать это:

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

Редактировать: Я также улучшил ваш синтаксис, пожалуйста, помните, что вам всегда нужно закрывать файлы.

...