#python #python-3.x #string #file #python-3.9
#Python #python-3.x #строка #файл #Python-3.9
Вопрос:
Я новичок в Python. Я хочу создавать файл журнала для каждого использования программы, вот код;
import time
date1 = time.strftime('%d-%m-%Y %H:%M:%S')
path = "C:\Users\Devisha\Documents\Coding\Python\DeviOS\Log"
name1 = '\Log-'
date = date1
last = '.txt'
filelog = path name1 date last
b = r"{}".format(filelog)
a = open(b, 'x')
И когда я запускаю его, он возвращает эту ошибку
Трассировка (последний последний вызов): файл «c:UsersDevishaDocumentsCodingPythontest.py «, строка 10, в a = open(b, ‘x’) Ошибка ошибки: [Ошибка 22] Недопустимый аргумент: ‘C:UsersDevishaDocumentsCodingPythonDeviOSLogLog-14-02-2021 23:42:33.txt ‘
Итак, что я хочу, это получить дату, объединить ее с начальным путем (path), начальным именем файла (name1) и типом файла (last) и преобразовать его в строку, а затем создать файл.
Я использую VS Code и 64-разрядный Python 3.9.1
Комментарии:
1. В этом нет необходимости
format
.filelog
это уже строка.2. Что вы подразумеваете под «преобразованием в необработанную строку»? Raw применяется только к строковым литералам, а не к содержимому строки.
3. Каким
x
должен быть режим?4. Вы пытались избежать пробела здесь «Log-14-02-2021 23:42:33.txt «?
5. @Barmar Я попытался добавить его в качестве пути напрямую без
format
, и он вернул это. Файл «c:UsersDevishaDocumentsCodingPythontest.py «, строка 10, в <module> a = open(filelog, ‘x’) Ошибка ошибки: [Ошибка 22] Недопустимый аргумент: ‘C:\Users\Devisha\Documents\Coding\Python\DeviOS\Log\Log-15-02-2021 08:22:11.txt ‘
Ответ №1:
Я бы порекомендовал вам использовать библиотеку ведения журнала python, если вы хотите записать код.
Комментарии:
1. Спасибо за предложение, это классная библиотека, простая в использовании и простая, но она по-прежнему не решает проблему имени файла в виде строки ———> [ Ошибка: [Ошибка 22] Недопустимый аргумент: ‘C:\Users\Devisha\Documents\Coding\Python\DeviOS\Log\Log-15-02-2021_09:26:54.txt «]
2. Это может быть форматирование строки, я бы действительно рекомендовал использовать os.path для создания пути к файлу. Одной из возможных проблем может быть способ определения пути Windows.