Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python文件存在_Python_File_File Exists - Fatal编程技术网

Python文件存在

Python文件存在,python,file,file-exists,Python,File,File Exists,我是python新手,如果我指向的目录中不存在文件,我似乎无法获得我正在编写的代码来进行处理。基本上,我打开每个文本文件来做一个小修改。我试着把(我认为的)是正确的代码放在这里 for filename in find_files('a-zA-Z0-9', '*.txt'): if os.path.isfile(filename): 代码末尾有一个else,用于打印未找到的消息文件。但是我仍然得到一个IOError,没有这样的文件或目录,这使整个程序停止。我做错了什么 非常感谢我不知道您的“f

我是python新手,如果我指向的目录中不存在文件,我似乎无法获得我正在编写的代码来进行处理。基本上,我打开每个文本文件来做一个小修改。我试着把(我认为的)是正确的代码放在这里

for filename in find_files('a-zA-Z0-9', '*.txt'):
if os.path.isfile(filename):
代码末尾有一个else,用于打印未找到的消息文件。但是我仍然得到一个IOError,没有这样的文件或目录,这使整个程序停止。我做错了什么

非常感谢

我不知道您的“find_files”函数,但是os.path.isfile()只是返回一个False,即使给定的路径无效

>>> os.path.isfile("NOTEXIST:/really/not/exists")
False

“查找文件”功能中必须有错误。

plz请共享完整的代码。如果不知道find_files()的实际用途,很难提供帮助。find_files如何返回一个不存在的文件?你要从别处删除它吗?在这种情况下,会出现同步问题。您的文件可以在测试后删除,但在您打开它之前(就像它可以在find_文件之后删除,但在测试isfile之前删除一样)find_文件做什么,顺便说一下?@njzk2<这一点,通常您应该尝试打开文件并在
try
中捕获异常,除非
,避免竞争条件
isfile()
不会引发该异常,因此它要么来自
查找文件()
函数,要么您正在尝试处理文件,即使
isfile()
返回
False
。或者你有同步问题。发布更完整的代码以获得更多帮助非常抱歉,到目前为止,这些示例都很糟糕。