今天早上跑一个代码段,如下,发现出现了no such file or directory
,
DEST_DIR = os.getcwd()+'\\downloads\\'
def save_flag(img, filename):
path = os.path.join(DEST_DIR, filename)
path = path.replace("\\", "/")
with open(path, 'wb') as fp:
fp.write(img)
debug 了一下,发现路径也没有错误,并且 open()函数也是没错的,这就奇了怪了,查了一下,原来是这个原因:
Probably the python interpreter is being executed from a different directory than where your script lives.
那就改 DEST_DIR = os.getcwd()
,结果正常了。可是在需要创建多个文件的时候,得给一个文件夹啊,又搜了一下,说使用绝对路径,试了都没有达到我的要求,仅仅是在指定目录创建一个文件很难吗?按照提示分析:
- 没有找到该文件
- 没有改目录
在语法没有错误的前提下,那就是创建文件夹的问题,试试,果然是这个问题,在方法执行前创建改文件夹os.mkdir(DEST_DIR)
, 搞定