Python 查找以特定字符串开头的值

Python 查找以特定字符串开头的值,python,python-3.x,Python,Python 3.x,我有一个*.txt文件,其中保存了一些文件的代码。格式如下: code1, a/b/c/1.jpg code2, a/b/c/2.jpg code1, a/b/c/3.jpg code2, a/b/d/4.jpg code3, a/b/d/5.jpg 我的目的是在同一文件夹中查找代码相同(重复)的文件。所有文件名都不同。如果相同的代码出现在不同的文件夹中,如code2、a/b/c/和code2、a/b/d/我想跳过它。现在,我有以下代码在整个*.txt文档中搜索特定代码: reader = c

我有一个*.txt文件,其中保存了一些文件的代码。格式如下:

code1, a/b/c/1.jpg
code2, a/b/c/2.jpg
code1, a/b/c/3.jpg
code2, a/b/d/4.jpg
code3, a/b/d/5.jpg
我的目的是在同一文件夹中查找代码相同(重复)的文件。所有文件名都不同。如果相同的代码出现在不同的文件夹中,如
code2、a/b/c/和code2、a/b/d/
我想跳过它。现在,我有以下代码在整个*.txt文档中搜索特定代码:

reader = csv.reader(csvfile)  
dataDict = dict()
for row in reader:
    if any (row):
        if row[0] in dataDict.keys():
            dataDict[row[0]].append(row[1])
        else:
            dataDict[row[0]] = [row[1]]
但这给了我不同文件夹中的副本。但是,我想在同一个文件夹中找到重复的文件

编辑:标题不清楚。我不知道如何在标题中描述这一点

reader = csv.reader(csvfile)  
dataDict = dict()
for row in reader:
    if any (row):
        code, filename = row
        _, dir_path = filename.rsplit('/', 1)
        if dir_path not in dataDict.keys():
            dataDict[dir_path] = {}
        if code not in dataDict[dir_path]:
            dataDict[dir_path][code] = []
        dataDict[dir_path][code].append(filename)
duplicates = []
for k_dir, v in dataDict.items():
    for _, paths in dataDict[k_dir].items():
        if len(paths) > 1:
            duplicates.append(paths)
return duplicates
第一部分是将代码和文件一起排序


第二部分是检测重复项并返回它们

如果相同的代码出现在不同的文件夹中,如code2、a/b/c/和code2,a/b/d/我想跳过它。
跳过它是什么意思?我的意思是如果相同的代码出现在不同的文件夹中,我不会将其视为重复。只有当一个代码在同一个文件夹中出现至少两次或更多次时,我才会认为它是一个复制品。好吧,那就更好了。但你想找到什么还不清楚。似乎要查找重复的文件条目。代码是怎么进来的?是否要查找具有相同对应代码的重复文件?代码为校验和。是的,我想通过使用md5检查查找重复项。