我设法将 8 行代码转换为 2 行。
第一个列表理解让我得到文件夹,第二个让我得到特定过滤器的文件:
hideTheseFolders=[".thumb",".mayaSwatches","RECYCLER","$AVG"]
fileFilters=["ma","jpg","png","mb",'iff','tga','tif']
newLst=[]
import os
locationTxt="E:\box\scripts"
[newLst.append(each) for each in os.listdir(locationTxt) if os.path.isdir(os.path.join(locationTxt,each)) and each not in hideTheseFolders]
[newLst.append(os.path.basename(os.path.join(locationTxt,each))) for nfile in fileFilters for each in os.listdir(locationTxt) if each.endswith(nfile)]
现在,在上面的代码中,最后两行正在从 的同一目录中查找locationTxt
,这意味着我可能有一种方法可以合并最后两行。有什么建议么?