我有一个文件夹:
aaa.sh
bbb.sh
ccc.sh
aaadomain.sh
hhhdomain.sh
yyyydomain.sh
aaadomainasssa.sh
当我这样做时,我会得到所有文件的列表
import glob,os
filelist = glob.glob('*.sh')
但是,如何在文件名中排除所有domain
作为字符串的文件?
答案 0 :(得分:2)
如果您计划迭代filter
,请使用filelist
:
for f in filter(lambda x: 'domain' not in x, glob.glob('*.sh')):
... # do something with f
或者,使用列表理解:
filelist = [x for x in glob.glob('*.sh') if 'domain' not in x]
答案 1 :(得分:0)
我建议列表理解。
>>> [i for i in glob.glob('*.sh') if 'domain' not in i]
['aaa.sh', 'ccc.sh', 'bbb.sh']