这是一个更好的版本,包括我目前所做的工作:
这个方法正确吗?如何高效地为sh2执行相同的操作?
这个字典:sfiles
{'C:\\Users\\user\\Desktop\\05052\\ASTTOM\\ASTTOM': [],
'C:\\Users\\user\\Desktop\\05052\\ASTIK\\ASTIK': [],
'C:\\Users\\user\\Desktop\\05052\\ROADS\\ROADS': []}
我希望检查是否存在 sh1
:
sh1
u'ASTTOM'
同时
sh2
u'ASTIK'
我希望将与sfiles匹配的完整路径分配给sh1。
我的做法:
for i in list(sfiles):
if shape1 in os.path.basename(i):
print((i))
shape1 = i
这个方法正确吗?如何高效地为sh2执行相同的操作?
os.path.basename
代替分割。在字典的键中查找子字符串并不是一种非常高效的方法。创建一个以 basename 为键、全路径(如果需要)+ 列表为值的字典,然后查找将是瞬间完成的。 - Jean-François Fabre