无法创建文件夹 - FileNotFoundError: [WinError 2] 系统找不到文件
Posted
技术标签:
【中文标题】无法创建文件夹 - FileNotFoundError: [WinError 2] 系统找不到文件【英文标题】:Can't create folders - FileNotFoundError: [WinError 2] The system cannot find the file 【发布时间】:2019-11-21 14:30:14 【问题描述】:我正在尝试做最简单的事情,但我无法让它发挥作用。
我在我的工作目录中,我们称它为“WorkDir”,就是这样:C:\WorkDir
我要创作:
newpath = 'C:\WorkDir\Video\Files'
if not os.path.exists(newpath):
os.makedirs(newpath)
FileNotFoundError: [WinError 2] The system cannot find the file specified: 'C:\\WorkDir\\Video'
我不明白这个错误。当然它找不到文件,它不存在。显然我做错了什么,但无法弄清楚。
我也尝试使用句号“.”表示工作目录,但这也不起作用。
这些都不起作用:
# raw string 'r'
newpath = r'C:\WorkDir\Video\Files'
if not os.path.exists(newpath):
os.makedirs(newpath)
# forward slashes
newpath = 'C:/WorkDir/Video/Files'
if not os.path.exists(newpath):
os.makedirs(newpath)
# period
newpath = '.\WorkDir\Video\Files'
if not os.path.exists(newpath):
os.makedirs(newpath)
# raw string
newpath = r'.\WorkDir\Video\Files'
if not os.path.exists(newpath):
os.makedirs(newpath)
FileNotFoundError: [WinError 2] The system cannot find the file specified: '.\\WorkDir'
据我所知,我是逐字逐句从 *** 帖子中复制的。想不通。
奇怪的是我可以直接在C盘新建一个目录,比如:
# create new folder RandomFolder
newpath = r'C:\RandomFolder\Video\Files'
if not os.path.exists(newpath):
os.makedirs(newpath)
但是,如果我尝试在工作目录中执行任何操作,我会收到错误消息。
编辑:完全错误:
FileNotFoundError Traceback (most recent call last)
<ipython-input-10-c7d3eec16936> in <module>
2
3 if not os.path.exists(newpath):
----> 4 os.makedirs(newpath)
5
6 # could add number of records to file name too
~\Anaconda3\lib\os.py in makedirs(name, mode, exist_ok)
209 if head and tail and not path.exists(head):
210 try:
--> 211 makedirs(head, exist_ok=exist_ok)
212 except FileExistsError:
213 # Defeats race condition when another thread created the path
~\Anaconda3\lib\os.py in makedirs(name, mode, exist_ok)
219 return
220 try:
--> 221 mkdir(name, mode)
222 except OSError:
223 # Cannot rely on checking for EEXIST, since the operating system
FileNotFoundError: [WinError 2] The system cannot find the file specified: 'C:\\WorkDir\\Video'
编辑 2,发现了一些东西:所以我刚刚注意到在我的笔记本顶部,自动保存失败。可能跟这个有关系。让我调查一下。很抱歉误报。
编辑 3: 已解决。这是 Windows 的“勒索软件保护”。不允许 Python 写入我的工作目录。
【问题讨论】:
最后的解决方案是尝试 C://usr// 是exists()
调用还是makedirs()
调用引发的错误?
请发布完整的错误信息
我已编辑添加完整错误。看起来是 os.makedirs(newpath)
造成的
我刚刚注意到我的 jupyter 笔记本上的自动保存失败。我想如果我解决这个问题,代码就会起作用。无论如何,谢谢你们的帮助。
【参考方案1】:
解决了。这是 Windows 的“勒索软件保护”。不允许 Python 写入我的工作目录。
【讨论】:
您是否找到了可靠的解决方案? 如果您想要一个强大的解决方案,请不要使用 Windows。这就是我得到的。您是否尝试在路径的最后添加反斜杠? 我相信吗?我假设Path
做了它需要做的任何事情。毯子允许 python.exe 通过受控文件夹访问上的块为我解决了。
感谢您确认。我在 C:/ 中创建了一个“工作”文件夹来进行编码,现在它有这个问题。我必须移动到“个人文件夹”,如 C:/Users/xxxx/ ,并且相同的代码在这个个人文件夹中运行良好。以上是关于无法创建文件夹 - FileNotFoundError: [WinError 2] 系统找不到文件的主要内容,如果未能解决你的问题,请参考以下文章
ORACLE中无法创建保存文件“afiedt.buf”如何解决