Как создать файл в папке с помощью Python?

Я пытаюсь создать папку, если она не завершается, то внутри этой папки я создам файл, в котором файл имеет тип JSON, а имя файла - timestamp + searchResult.js.

где результат становится:search_result / 2018-4-7_searchResult.js

Система отображает эту ошибку:

ожидаемый объект str, bytes или os.PathLike, а не NoneType

код:

jsondata = json.dumps(listMetaData)

                    if not(os.path.exists('./search_result')):
                        try:
                            searchResultFoder=os.mkdir("./search_result")

                            today = datetime.date.today()
                            fileName = "{}_searchResult.js".format(today)
                            fpJ = os.path.join(searchResultFoder,fileName)
                            with open("{0}/{1}".format(fpJ,fileName),"w") as jsf:
                                jsf.write(jsondata)
                                print("finish writing")
                        except Exception as e:
                            print(e)

1 ответ

os.mkdir возвращает None, поэтому ваша переменная инициализируется None

searchResultFoder=os.mkdir("./search_result")

и когда вы делаете

fpJ = os.path.join(searchResultFoder,fileName)

Это выдает ошибку. Просто сохраните путь в переменной и используйте его

foldername = "./search_result"
fpJ = os.path.join(foldername,fileName)
Другие вопросы по тегам