如何检查文件夹是否不存在,并在其中创建一个文件?

2024-10-02 18:21:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图检查文件夹是否存在,如果不是系统创建它和一个JSON文件将写入这个文件夹。在

问题是系统创建一个空文件夹并显示以下错误:

None

 the selected file is not readble because :  [WinError 183] Cannot
 create a file when that file already exists: './search_result'
 'NoneType' object is not iterable

Noneprint(searchResultFoder)的结果。在

代码是:

^{pr2}$

Tags: 文件the文件夹nonejsonis系统错误
1条回答
网友
1楼 · 发布于 2024-10-02 18:21:20

代码问题:

  • 案例目录不存在:os.mkdir("./search_result")中的fpJ = os.path.join(os.mkdir("./search_result"),jsonFileName)返回 没有你认为它会返回你创建的路径 文件夹。这是不正确的。

  • 案例目录存在:当条件if not(os.path.exists("./search_result")):
    is false json文件名将未定义并引发异常

一。 完整的代码工作示例如下。 1) 检查文件夹是否存在,如果没有创建它 2) 在这个创建的文件夹中写入JSON文件。在

import json
import os
import time

jsondata = json.dumps({"somedata":"Something"})
folderToCreate = "search_result"
today = time.strftime("%Y%m%d__%H-%M")
jsonFileName = "{}_searchResult.json".format(today)

if not(os.path.exists(os.getcwd()+os.sep+folderToCreate)):
                    os.mkdir("./search_result")

fpJ = os.path.join(os.getcwd()+os.sep+folderToCreate,jsonFileName)
print(fpJ)

with open(fpJ,"a") as jsf:
                    jsf.write(jsondata)
                    print("finish writing")

希望这有帮助

相关问题 更多 >