当文件确实存在时,Python Errno2'没有这样的文件或目录'

时间:2019-07-26 02:22:52

标签: python-3.x sorting

对于给定目录中存在的文件,我得到“找不到文件”错误。

我的程序旨在导航到给定目录,然后获取该目录中所有文件的列表,然后按编号顺序处理每个文件。

ex:
1.txt  
2.txt
3.txt

上面写着“ FileNotFoundError:[Errno 2]没有这样的文件或目录:'2.txt'”

'''
       def SortingBS(text):
           return int(text) if text.isdigit() else text

       def natural_keys(text):
           return [SortingBS(c) for c in re.split(r'(\d+)', text) ]

        mypath = input("What's the path to the target directory?: ")
        onlyfiles = [f for f in listdir(mypath) if isfile(join(mypath, f))]
        onlyfiles.sort(key=natural_keys)
        open(onlyfiles[0-110], "r")
        if f.mode == 'r':
'''

我在目录中有111个文本文件,每个文件的名称都类似于“ [number] .txt” 我想让我的代码将目录中的每个文件都按1-111的顺序排序,然后为每个文件应用一些先前的功能。此刻,即使文件位于我输入的确切目录下(D:\ example \ Example \),我仍然收到“找不到文件”错误。

更新: 正如用户的好意所示,我尝试使用os.path.join,但出现一个奇怪但相似的错误。

mypath = input("What's the path to the target directory?: ")
onlyfiles = [f for f in listdir(mypath) if isfile(join(mypath, f))]
onlyfiles.sort(key=natural_keys)
open(join(mypath, onlyfiles[0-110], "r"))
if f.mode == 'r':

错误是:

FileNotFoundError: [Errno 2] No such file or directory: 'D:/example/Example\\2.txt\\r'

0 个答案:

没有答案