繁体   English   中英

我在 Python 中收到“FileNotFoundError:”,即使在同一目录中成功找到了一些文件

[英]I'm getting the “FileNotFoundError:” in Python, even though some files are successfully found on the same directory

我想重命名此目录中的 PDF 文件:

目录

基于我在此代码中创建的列表:

import pdfplumber
import os


pdf_name = []

for filename in os.listdir("."):
    if filename.endswith(".pdf"):
        with pdfplumber.open(filename) as pdf:
            page = pdf.pages[0]
            text = page.extract_text()

            li = text.split(' ')
            for item in li:
                if item == 'pp.' or item == 'p.':
                    next_element = li[li.index(item)+1]
                    pdf_name.append(next_element)
                    pdf_name = [x.split()[0] for x in pdf_name]
                if item == 'Front' or item == 'Back':
                    pdf_name.append(item)
                    pdf_name = [x.split()[0] for x in pdf_name]

for filename in os.listdir("."):
    if filename.endswith(".pdf"):
        for item in pdf_name:
            src = item + ".pdf"
            dst = filename
            os.rename(src, dst)

print(pdf_name)

但我收到此错误消息:

错误信息

即使您在文件夹中看到, 211-225.pdfFront.pdf文件已经成功重命名,但是对于 Z65E8800B5C6800AAD896F888B2A6.m 出现上述错误'2A

我认为您的代码多次重命名同一个文件(使用for item in pdf_name )。 第一次重命名后,该文件显然不再以其旧名称存在。

您发布的代码存在多个问题。

for filename in os.listdir("."):
    if filename.endswith(".pdf"):
        for item in pdf_name:
            src = item + ".pdf"
            dst = filename
            os.rename(src, dst)

在此块中,您尝试将不同的源文件重命名为已存在的相同目标文件。 (i)我认为您交换了 src 和 dst,(ii)重命名文件后,它将具有新名称,因此您不能多次重命名。 您要么必须复制或重新考虑您的循环。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM