我想重命名此目录中的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.pdf和Front.pdf文件已经成功重命名,但对于其余文件,我得到了上面提到的错误
我认为您的代码多次重命名同一个文件(使用内部
for item in pdf_name
循环)。在第一次重命名之后,文件显然不再以旧名称存在您发布的代码存在多个问题
在此块中,您试图将不同的源文件重命名为已存在的相同目标文件。(i) 我认为您交换了src和dst,(ii)重命名文件后,它将具有新名称,因此您不能多次重命名。您必须复制或重新思考循环
相关问题 更多 >
编程相关推荐