Ответ 1
Вам нужно преобразовать uuid
в str
:
>>> import uuid
>>> str(uuid.uuid4()) + ".txt"
'13eb9327-f40e-4ef1-8020-1c36af1b4b70.txt'
Как вы объединяете значение uuid.uuid4() с литералом при создании файла? Нижеследующее неверно, но должно иллюстрировать то, что я пытаюсь сделать...
fo = open(uuid.uuid4() + ".txt", "wb")
Вам нужно преобразовать uuid
в str
:
>>> import uuid
>>> str(uuid.uuid4()) + ".txt"
'13eb9327-f40e-4ef1-8020-1c36af1b4b70.txt'
Эта версия не включает -
в строку
fo = open(uuid.uuid4().hex + ".txt", "wb")
Часто бывает полезно открыть файл с помощью диспетчера контекстов
with open(uuid.uuid4().hex + ".txt", "wb") as fo:
# do stuff with fo
# fo will be closed automatically
Здесь пример в цикле
for item in data:
with open(uuid.uuid4().hex + ".txt", "wb") as fo:
fo.write(item)