我尝试在两个不同的目录中查找成对的文件。一个文件以 .anno 结尾,另一个以 .png 结尾。我试着找到它们并计算我有多少机器。所以我试过这个:
for AnnoFile in glob.iglob(f'annotations/**/*.anno', recursive=True):
AnnoFile_name = Path(AnnoFile).stem
print("1: " + AnnoFile_name)
for CatFile in glob.iglob(f'categories/**/.png', recursive=True):
CatFile_name = Path(CatFile).stem
print("2: " + CatFile_name)
CatFile_name = CatFile_name.replace("_visu", "")
if AnnoFile == CatFile_name:
print("Match found!")
Counter = Counter + 1
print(Counter)
我试图先找到“.anno”-File,然后搜索匹配的.png 文件。 .png 文件的名称有一个后缀,这就是我用“”替换“_visu”的原因。我在控制台中看到的只是第一个 for 循环的打印。
我发现错误了。我忘记了.png 之前的'*'。所以它必须是:
for AnnoFile in glob.iglob(f'annotations/**/*.anno', recursive=True):
AnnoFile_name = Path(AnnoFile).stem
print("1: " + AnnoFile_name)
for CatFile in glob.iglob(f'categories/**/*.png', recursive=True):
CatFile_name = Path(CatFile).stem
print("2: " + CatFile_name)
CatFile_name = CatFile_name.replace("_visu", "")
if AnnoFile == CatFile_name:
print("Match found!")
Counter = Counter + 1
print(Counter)