我有以下代码:
with open('EcoDocs TK pdfs.csv', 'rb') as pdf_in:
pdflist = csv.reader(pdf_in, quotechar='"')
for row in pdflist:
if row[1].endswith(row[2]):#check if file type is appended to file name
pathname = ''.join(row[0:2])
else:
pathname = ''.join(row)
if os.path.isfile(pathname):
filehash = md5.md5(file(pathname).read()).hexdigest()
它从 csv 文件中读取文件路径、文件名和文件类型。然后,在加入文件路径和文件名之前,它会检查文件类型是否附加到文件名。然后,在对文件执行某些操作之前,它会检查文件是否存在。csv 文件中有大约 5000 个文件名,但 isfile 仅对其中大约一半返回 True。我已经手动检查了其中一些 isfile 返回 False 是否存在。由于读取了所有数据,转义字符或单个反斜杠应该没有任何问题,所以我有点难过。有任何想法吗?下面是 csv 文件格式的示例,以及一些pathname
isfile 无法找到的示例。
csv文件——
c:\2dir\a. dir\d dir\lo dir\fu dir\wdir\5dir\,5_l B.xls,.xls
c:\2dir\a. dir\d dir\lo dir\fu dir\wdir\5dir\,5_l A.pdf,.pdf
创建的路径名-
c:\2dir\a. dir\d dir\lo dir\fu dir\wdir\5dir\5_l B.xls
c:\2dir\a. dir\d dir\lo dir\fu dir\wdir\5dir\5_l A.pdf
谢谢。