我的脚本记录有关目录和子目录中所有唯一文件类型的信息。在创建唯一的文件扩展名列表的过程中,当前代码认为 jpg、Jpg 和 JPG 是相同的,因此它只将其中一个包含在列表中。如何包含所有三个或更多差异?
for root, dirs, files in os.walk(SourceDIR, topdown=False):
for fl in files:
currentFile=os.path.join(root, fl)
ext=fl[fl.rfind('.')+1:]
if ext!='':
if DirLimiter in currentFile:
List.append(currentFile)
directory1=os.path.basename(os.path.normpath(currentFile[:currentFile.rfind(DirLimiter)]))
directory2=(currentFile[len(SourceDIR):currentFile.rfind('\\'+directory1+DirLimiter)])
directory=directory2+'\\'+directory1
if directory not in dirList:
dirCount+=1
dirList.append(directory)
if ext not in extList:
extList.append(ext)
完整的脚本在stackexchange上的这个问题中:Recurse through commands and log files by file type in python
感谢 JennaK 的进一步调查,我发现 jpg 报告中的输入实际上在文件中包含 JPG 和 jpg,如下所示。
> 44;X:\scratch\project\Input\Foreshore and Jetties Package
> 3\487679 - Jetty\IMG_1630.JPG;3755267
> 45;X:\scratch\project\Input\Foreshore and Jetties Package
> 3\487679 - Jetty\IMG_1633.JPG;2447135
> 1;X:\scratch\project\Input\649701 - Hill
> Close\2263.jpg;405328 2;X:\scratch\project\Input\649701 - Hill Close\2264.jpg;372770
所以它首先获取所有 JPG 文件的详细信息,然后是 jpg 文件并将它们放在一个报告中,这实际上比拥有 2 个报告更方便。我想我的编程比我想象的要好:-)