Python:输入和输出文件名匹配

时间:2016-07-01 18:27:44

标签: python filenames matching

我正在尝试为我正在阅读的文件名提供一种方法,使其具有与我正在编写的文件名相同的文件名。该代码目前正在读取图像并进行一些处理。我的输出将从该进程中提取数据到csv文件中。我希望两个文件名都一样。我遇到了匹配的fname,但那是现有文件。

2 个答案:

答案 0 :(得分:1)

因此,如果您的输入文件名是in_file = myfile.jpg,请执行以下操作:

my_outfile = "".join(infile.split('.')[:-1]) + 'csv'

这将infile拆分为由'分隔的部分列表。'。然后它将它们放在一起减去最后一部分,然后添加csv

你的my_outfile将是myfile.csv

答案 1 :(得分:1)

在python中可以这样做但是,如果我们要使用相同的文件名,原始文件可能已损坏,即BibleKJV.pdf到路径BibleKJV.pdf将损坏第一个文件。看看这个脚本来验证我是否走在正确的轨道上(如果我完全无视我的回答):

import os
from PyPDF2 import PdfFileReader , PdfFileWriter

path = "C:/Users/Catrell Washington/Pride"

input_file_name = os.path.join(path, "BibleKJV.pdf")
input_file = PdfFileReader(open(input_file_name , "rb"))

output_PDF = PdfFileWriter()

total_pages = input_file.getNumPages()

for page_num in range(1,total_pages) :
     output_PDF.addPage(input_file.getPage(page_num))

output_file_name = os.path.join(path, "BibleKJV.pdf")
output_file = open(output_file_name , "wb")
output_PDF.write(output_file)

output_file.close()

当我运行上面的脚本时,我丢失了原始路径"BibleKJV.pdf"中的所有数据,从而证明如果文件名和文件委托(即.pdf .cs .word等)与数据相同,除非改变很小,否则会被破坏。

如果这对您没有任何帮助,请使用您尝试实现的目标编辑您的问题。